volume_gradient_sphere¶
Create a Spherical Volume filled with gradient data.
volume_gradient_sphere.py¶
"""Create a Spherical Volume filled with gradient data.
Topics:
* Ovolume.SetVolume()
* maxon.VolumeToolsInterface.CreateSphereVolume()
* maxon.VolumeToolsInterface.CreateGradient()
"""
__author__ = "Maxime Adam"
__copyright__ = "Copyright (C) 2026 MAXON Computer GmbH"
__license__ = "Apache-2.0 License"
__version__ = "R20"
import c4d
import maxon
def main():
# Creates a Volume Object
volumeObj = c4d.BaseObject(c4d.Ovolume)
if volumeObj is None:
raise MemoryError("Failed to create a volume object.")
# Creates a Sphere Volume
sphereVolume = maxon.VolumeToolsInterface.CreateSphereVolume(maxon.Float(100.0),
maxon.Vector(0, 100, 0),
maxon.Float(1.0),
maxon.Int32(2),
maxon.ThreadRef(),
None)
# Fills the volume with a Gradient
gradientVolume = maxon.VolumeToolsInterface.CreateGradientVolume(sphereVolume, maxon.ThreadRef())
# Sets the VolumeRef in the Volume Object and insert it in the scene
volumeObj.SetVolume(gradientVolume)
doc.InsertObject(volumeObj)
# Pushes an update event to Cinema 4D
c4d.EventAdd()
if __name__ == '__main__':
main()