Я пишу некоторые функции python для чтения/записи простых пространственных данных, таких как точки, полигоны, триангулированные поверхности в/из простой структуры данных в Python. Я знаю, есть некоторые возможности для доступа к этим структурам данных из C или C++, как в этом посте: Passing Python list to C++ vector using Boost.pythonДоступ к данным python из C (++)
Однако, я не опытный программист с помощью шаблонов, и я хотел бы начать с первым простой способ - если есть. Поэтому, если у меня есть список точечных объектов (см. Простое определение класса), как мне получить доступ к этому списку из ? C -Программа, считывающая соответствующие переменные.
class point3d():
def __init__(self, objectName, version, id=[], xyz=[], prop=[], unit=[], val=[]):
self.id = id
self.xyz = xyz
self.prop = prop
self.unit = unit
self.val = val
dim = len(self.xyz)
self.objectName = objectName
self.version = version
if dim == 1:
self.x = self.xyz[0]
elif dim == 2:
self.x = self.xyz[0]
self.y = self.xyz[1]
elif dim == 3:
self.x = self.xyz[0]
self.y = self.xyz[1]
self.z = self.xyz[2]
def __del__(self):
pass
def getObjectName(self):
return self.objectName
def getVersion(self):
return self.version
def getXYZ(self):
return self.xyz
def getDim(self):
return self.dim
def getProp(self):
return self.prop
def getUnit(self):
return self.unit
def getVal(self):
return self.val
def getId(self):
return self.id