Получить информацию о контрольных точках / узлах из файла шага - PullRequest
0 голосов
/ 24 января 2020

Я новичок в OPEN CASCADE и столкнулся с проблемой, связанной с доступом к контрольным точкам, knot, vertex et c.

Я могу импортировать файл STEP в python, используя pythono cc пакет, но не в состоянии получить доступ к вышеупомянутым деталям кривой.

Импортированный объект переводится в TopoDS_Shape с помощью метода step_reader.Shape (), но доступ к его деталям - основная цель моей работы.

Я также ценю решение на C ++ или любом другом языке программирования.

Мой python код для импорта файла STEP выглядит следующим образом:

from OCC.Core.STEPControl import STEPControl_Reader
from OCC.Core.IFSelect import IFSelect_RetDone, IFSelect_ItemsByEntity,IFSelect_CountByItem, IFSelect_ListByItem
from OCC.Core.TopAbs import TopAbs_EDGE


step_reader = STEPControl_Reader()
status = step_reader.ReadFile('D:/Python projtcts/2D-Spline_STEP214.stp')

if status == IFSelect_RetDone:  # check status
    failsonly = False
    step_reader.PrintCheckLoad(failsonly, IFSelect_ItemsByEntity)
    step_reader.PrintCheckLoad(failsonly, IFSelect_CountByItem)
    step_reader.PrintCheckLoad(failsonly, IFSelect_ListByItem)
    step_reader.PrintCheckTransfer(failsonly, IFSelect_ItemsByEntity)

    ok = step_reader.TransferRoot(1)
    _nbs = step_reader.NbShapes()
    aResShape = step_reader.Shape(1)

else:
    print("Error: can't read file.")
    sys.exit(0)

n = step_reader.NbRootsForTransfer()
m = step_reader.TransferRoot()
...