xForm_socket_templates.py 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. from .base_definitions import MantisSocketTemplate as SockTemplate
  2. from .misc_nodes_socket_templates import SplineIndexTemplate
  3. from dataclasses import replace
  4. xFormArmatureSockets=[
  5. NameTemplate := SockTemplate(
  6. name="Name", is_input=True, bl_idname='StringSocket',
  7. default_value='Armature', blender_property='name' ),
  8. RotationOrderTemplate := SockTemplate(
  9. name="Rotation Order", is_input=True, bl_idname='RotationOrderSocket',
  10. default_value='XYZ', blender_property='rotation_mode' ),
  11. ObjectMatrixTemplate := SockTemplate(
  12. name="Matrix", is_input=True, bl_idname='MatrixSocket',
  13. blender_property='matrix_world' ),
  14. RelationshipInSocket := SockTemplate(
  15. name="Relationship", is_input=True, bl_idname='RelationshipSocket', ),
  16. xFormOutTemplate := SockTemplate(
  17. name="xForm Out", is_input=False, bl_idname='xFormSocket', ),
  18. ]
  19. xFormGeometryObjectSockets=[
  20. replace(NameTemplate, default_value='Object'),
  21. GeometryTemplate := SockTemplate(
  22. name="Geometry", is_input=True, bl_idname='GeometrySocket', ),
  23. ObjectMatrixTemplate,
  24. RelationshipInSocket,
  25. DeformerInTemplate := SockTemplate(name="Deformer", is_input=True,
  26. bl_idname='DeformerSocket', ),
  27. HideTemplate := SockTemplate(name="Hide in Viewport",
  28. is_input=True, bl_idname='HideSocket', default_value=False,
  29. blender_property='hide_viewport' ),
  30. HideRenderTemplate := SockTemplate(name="Hide in Render",
  31. is_input=True, bl_idname='BooleanSocket', default_value=False,
  32. blender_property='hide_render' ),
  33. xFormOutTemplate,
  34. ]
  35. xFormGeometryObjectInstanceSockets=[
  36. replace(NameTemplate, default_value='Object Instance'),
  37. SourcexFormTemplate := SockTemplate(
  38. name="Source Object", is_input=True, bl_idname='xFormSocket', ),
  39. AsInstanceTemplate := SockTemplate( name="As Instance", is_input=True,
  40. bl_idname='BooleanSocket', default_value=True,),
  41. ObjectMatrixTemplate,
  42. RelationshipInSocket,
  43. DeformerInTemplate,
  44. HideTemplate,
  45. HideRenderTemplate,
  46. xFormOutTemplate,
  47. ]
  48. xFormCurvePinSockets = [
  49. replace(NameTemplate, default_value='Curve Pin'),
  50. ParentCurveTemplate := SockTemplate(
  51. name="Parent Curve", is_input=True, bl_idname='xFormSocket', ),
  52. SplineIndexTemplate,
  53. FactorTemplate := SockTemplate(
  54. name="Curve Pin Factor", is_input=True, bl_idname='FloatFactorSocket',
  55. default_value=0.0, blender_property='offset_factor' ),
  56. ForwardAxisTemplate := SockTemplate(
  57. name="Forward Axis", is_input=True, bl_idname='EnumFollowPathForwardAxis',
  58. default_value="FORWARD_Y", blender_property='forward_axis' ),
  59. UpAxisTemplate := SockTemplate(
  60. name="Up Axis", is_input=True, bl_idname='EnumUpAxis',
  61. default_value="UP_Z", blender_property='up_axis' ),
  62. CurvePinDisplaySize := SockTemplate(
  63. name="Display Size", is_input=True, bl_idname='FloatPositiveSocket',
  64. default_value=0.05, blender_property='empty_display_size'),
  65. xFormOutTemplate,
  66. ]