primitives_definitions.py 924 B

12345678910111213141516171819202122232425262728293031
  1. import bpy
  2. from bpy.types import NodeTree, Node, NodeSocket
  3. from .base_definitions import MantisUINode
  4. def TellClasses():
  5. return [
  6. GeometryCirclePrimitive,
  7. ]
  8. def default_traverse(self,socket):
  9. return None
  10. class GeometryCirclePrimitive(Node, MantisUINode):
  11. '''A node representing a circle primitive'''
  12. bl_idname = 'GeometryCirclePrimitive'
  13. bl_label = "Circle Primitive"
  14. bl_icon = 'NODE'
  15. initialized : bpy.props.BoolProperty(default = False)
  16. mantis_node_class_name="CirclePrimitive"
  17. def init(self, context):
  18. self.inputs.new('StringSocket', "Name")
  19. self.inputs.new('FloatPositiveSocket', "Radius")
  20. self.inputs.new('IntSocket', "Number of Points")
  21. self.outputs.new('GeometrySocket', "Circle")
  22. self.initialized = True
  23. for cls in TellClasses():
  24. cls.mantis_node_library='.primitives_containers'
  25. cls.set_mantis_class()