@zipit
Hi,
I created the following example just to demonstrate my issue:
Code:
class MyCube(plugins.ObjectData):
def Init(self, op):
self.SetOptimizeCache(True)
self.InitAttr(op, float, [c4d.MYCUBE_OBJECT_WIDTH])
self.InitAttr(op, float, [c4d.MYCUBE_OBJECT_HEIGHT])
self.InitAttr(op, float, [c4d.MYCUBE_OBJECT_DEPTH])
data = op.GetDataInstance()
data.SetFloat(c4d.MYCUBE_OBJECT_WIDTH, 1600.0)
data.SetFloat(c4d.MYCUBE_OBJECT_HEIGHT, 1000.0)
data.SetFloat(c4d.MYCUBE_OBJECT_DEPTH, 1500.0)
return True
def GetVirtualObjects(self, op, hierarchyhelp):
width = op[c4d.MYCUBE_OBJECT_WIDTH]
height = op[c4d.MYCUBE_OBJECT_HEIGHT]
depth = op[c4d.MYCUBE_OBJECT_DEPTH]
cube = c4d.BaseObject(c4d.Ocube)
cube[c4d.PRIM_CUBE_LEN, c4d.VECTOR_X] = width
cube[c4d.PRIM_CUBE_LEN, c4d.VECTOR_Y] = height
cube[c4d.PRIM_CUBE_LEN, c4d.VECTOR_Z] = depth
return cube
And here is an screenshot for the given result :

The object is too large and it cut off in the viewport, and my object must be with the given dimensions above