I am creating a GvNode via GvNodeMaster.CreateNode() in a python script that opens an existing cinema 4d file and stores it after the modifications to a different cinema 4d file. When I open the newly created file in cinema 4d I can access and write to the the GvNode's x and y position perfectly fine like this in the python console:
# x coordinate
my_node.GetDataInstance().GetContainerInstance(1001).GetContainerInstance(1000)[100] = x
# y coordinate
my_node.GetDataInstance().GetContainerInstance(1001).GetContainerInstance(1000)[101] = y
But when I try to access those coordinates from inside the python script via c4dpy I get an NoneType error because the last base container (1000) is missing in base container with id 1001. I tried manually creating a new BaseContainer instance and attaching it like this:
my_node.GetDataInstance().GetContainerInstance(1001)[1000] = c4d.BaseContainer()
But this totally messes up the graphview when I open it in cinema 4d. I guess because all the other attributes like width and hight are missing.
Is this base container somehow created at a later stage where I don't have access yet? Is this intentional?