Слияние веток 91 и path2pddl
This commit is contained in:
parent
44ee21414b
commit
e86914dba1
24 changed files with 732 additions and 0 deletions
109
sequence_generation/Main.py
Normal file
109
sequence_generation/Main.py
Normal file
|
@ -0,0 +1,109 @@
|
|||
import os
|
||||
from extensions.list import CoreList
|
||||
from extensions.dict import CoreDict
|
||||
from helpers.freecadtest import FreeCadASPGenerationTestController
|
||||
from models.adjacency_matrix_model import (
|
||||
AdjacencyMatrixModel,
|
||||
)
|
||||
from usecases.check_object_has_touches_use_case import (
|
||||
CheckObjectHasTouchesUseCase,
|
||||
)
|
||||
from usecases.clusterisation_sequences_use_case import (
|
||||
ClusterisationSequenceUseCase,
|
||||
)
|
||||
from usecases.check_sequence_use_case import (
|
||||
CheckSequenceUsecase,
|
||||
)
|
||||
from usecases.env_reader_use_case import (
|
||||
EnvReaderUseCase,
|
||||
)
|
||||
from usecases.exit_freecad_use_case import (
|
||||
ExitFreeCadUseCase,
|
||||
)
|
||||
from usecases.intersection_geometry_use_case import (
|
||||
IntersectionGeometryUseCase,
|
||||
)
|
||||
from usecases.open_freecad_document_use_case import (
|
||||
OpenFreeCadDocumentUseCase,
|
||||
)
|
||||
import FreeCad as App
|
||||
import FreeCadGUI as Gui
|
||||
|
||||
from mocks.mock_structure import bottle_jack_mock_structure, simple_cube_mock_structure
|
||||
|
||||
|
||||
#Функционал для реализации в main
|
||||
#Отсюда тянем необходимые для работы верстака функции
|
||||
|
||||
""" 'Check Model': (my_function1, "Path/to/icon1.svg"),
|
||||
'Constraints Autogeneration': (my_function2, "Path/to/icon2.svg"),
|
||||
'Constraints Editing': (my_function1, "Path/to/icon1.svg"),
|
||||
'Generate AdjMatrix': (my_function1, "Path/to/icon1.svg"),
|
||||
'Generate Relationship Matrix': (my_function1, "Path/to/icon1.svg"),
|
||||
'Clusterisation': (my_function1, "Path/to/icon1.svg"),
|
||||
'StepByStepClusterisation': (my_function1, "Path/to/icon1.svg"),
|
||||
'Generate Assembly Sequences': (my_function1, "Path/to/icon1.svg"),
|
||||
'Decomposition Step': (my_function1, "Path/to/icon1.svg")"""
|
||||
|
||||
|
||||
class PreprocessorUsecase:
|
||||
def initActiveDocument():
|
||||
activeDoc = App.ActiveDocument
|
||||
return activeDoc
|
||||
|
||||
def checkModel(activeDoc):
|
||||
IntersectionGeometryUseCase.call(activeDoc, out_path)
|
||||
|
||||
def constrAutoGen():
|
||||
ConstraintsAutoGeneration.call(activeDoc)
|
||||
|
||||
def
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
def main():
|
||||
try:
|
||||
EnvReaderUseCase.call().either(
|
||||
leftF=lambda environment: (
|
||||
OpenFreeCadDocumentUseCase.call(environment.cadFilePath).either(
|
||||
leftF=lambda _: (
|
||||
(
|
||||
CheckObjectHasTouchesUseCase()
|
||||
.call(environment.solidBodyPadding)
|
||||
.either(
|
||||
leftF=lambda adjaxedMatrix: (
|
||||
adjaxedMatrix.sequencesToFileSystem(
|
||||
environment.outPath,
|
||||
environment.sequencesFixed,
|
||||
),
|
||||
IntersectionGeometryUseCase.call(
|
||||
adjaxedMatrix.matrixGetUniqueContact(),
|
||||
environment.outPath,
|
||||
),
|
||||
adjaxedMatrix.matrixToFileSystem(
|
||||
environment.outPath,
|
||||
),
|
||||
ClusterisationSequenceUseCase(environment.outPath),
|
||||
ExitFreeCadUseCase.call(),
|
||||
),
|
||||
rightF=lambda error: error.toFileSystem(
|
||||
environment.outPath
|
||||
),
|
||||
),
|
||||
)
|
||||
),
|
||||
rightF=lambda error: print(error),
|
||||
),
|
||||
),
|
||||
rightF=lambda error: print(error),
|
||||
)
|
||||
|
||||
except Exception as error:
|
||||
print(error)
|
||||
ExitFreeCadUseCase.call()
|
Loading…
Add table
Add a link
Reference in a new issue