framework/pddl/main.py

25 lines
No EOL
940 B
Python

import argparse
from helper.fs import FS
from src.model.asm4_structure import Asm4Structure
from src.usecases.assembly_to_pddl_use_case import AssemblyToPddlUseCase
# python3 main.py --stepStructurePath /Users/idontsudo/robo/Cube3/step-structure.json --outPath /Users/idontsudo/robo/Cube3/pddl/
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument('--stepStructurePath', help='json step by FreeCad')
parser.add_argument('--outPath', help='save pddl path')
args = parser.parse_args()
if args.stepStructurePath == None or args.outPath == None:
parser.print_help()
data = FS.readJSON(args.stepStructurePath)
assemblyToPddlUseCase = AssemblyToPddlUseCase.call(assembly=data,rootLabel=data[0])
FS.writeFile(assemblyToPddlUseCase['problem'] ,args.outPath, 'problem.pddl')
FS.writeFile(assemblyToPddlUseCase['domain'] ,args.outPath, 'domain.pddl')