diff --git a/README.md b/README.md index 163035a..a237d4d 100644 --- a/README.md +++ b/README.md @@ -2,15 +2,32 @@ A project about having co-operation between Sofa and Blender. -Once the blender plugin is activated in the blender interface. -User has the choice between to way to have sofa and blender to interact. +# Features +- build and generate sofa simulation using a dedicated node interface +- importing result of a Sofa simulation in blender either using Client-server's mode or Disk Baking -# Client-server's mode +# Node base editor for Sofa Simulation + +The editor allow to edit a full Sofa Scene, save it to disk. +- direct use of Blender's object for geometrical editting +- any Sofa object supported +- UX support for Prefab +- UX support for Controllers + +The linking magics rules: +- self to src => similar behavior as the one in Sofa (linking any socket with similar name) +- self to "+" => add an src socket +- named socket to "+" => add a socket on the "+" side with similar name and type as the dragged from +- "+" => add socket from the list of socket associated to a component or create a complete new one + + +# Importing a Sofa simulation's run in blender +## Client-server's mode This solution transmit the data over a network connexion. A dedicated component must be added to the scene in charge of streaming the simulation data over the network. This component is implemented in c++ and compiled as a binary plugin for Sofa. -# Disk baking solution. +## Disk baking solution. Instead to transmit data over a network connexion between Sofa and Blender it is alternatively possible to bake (compute) Sofa simulation and store the simulation data on disk. The current implementation is using python and thus works with the binary releases of Sofa 23.12. diff --git a/TODO.md b/TODO.md new file mode 100644 index 0000000..83e865e --- /dev/null +++ b/TODO.md @@ -0,0 +1,22 @@ +Things to do: +- [X] add "generic" component with a customizable "className" +- [] fix adding a template on output (shows the value... even if there is an input) +- [] fix problem: the group outputs are not correctly saved in the .py file (invalid type, only string) and no internal parenting +- [] save generic component in a fake storage +- [] fix problem: the prefab used in scenes are not saved recursively when clicking on their calling point +- [] properly handle the .sofa_blender/ configuration direction using a recursive approch +- [] when reloading the type from a Prefab, all the existing links are removed. +- [] group input does not support templates... +- [] linking template does not work... they are not data to parent. +- [] implmeent a PythonExpression that take its input to bind them and apply a function to that (see example in pep01). +- [] fix the default value of attributes that are initialized from nodes.json +- [] implement a mechanisme to handle the RequiredPlugin for a Prefab +- [] implement a mechanisme to get the SOFA error messages highlighting the corresponding nodes and socket. => put them in RED ? +- [] implement a PythonController +- [] SofaBlenderSocket => BlenderObject +- [] Add a visual feedback when invalid value +- [] BlenderObject does not report error if the blender object is missing. +- [] the "name" as input in RequiredPlugin collides with setting of names from GUI +- [] on RequiredPlugin, the pluginName does not have a text fiel for selection. +- [] SofaBlender.py is missing when exporting in a new directory +- [X] Fix the shared component type in CustomObject \ No newline at end of file diff --git a/blender-plugin/addons/SofaNodeEditor/__init__.py b/blender-plugin/addons/SofaNodeEditor/__init__.py new file mode 100644 index 0000000..0b474c9 --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/__init__.py @@ -0,0 +1,35 @@ +bl_info = { + "name": "SOFANodeEditor", + "description": "A plugin to design SOFA simulations in blender.", + "author": "Damien Marchal", + "blender": (5, 0, 0), + "category": "Object", +} + +import bpy +from bpy.props import BoolProperty, StringProperty, IntProperty +from bpy.types import AddonPreferences, Operator + +from . import ( + panels, + operators, + sofanodes, + sofaerrors +) + +class SOFANodeEditorSettings(AddonPreferences): + bl_idname = __name__ + +def register(): + bpy.utils.register_class(SOFANodeEditorSettings) + panels.register() + operators.register() + sofanodes.register() + +def unregister(): + bpy.utils.unregister_class(SOFANodeEditorSettings) + panels.unregister() + operators.unregister() + sofanodes.unregister() + +print("RELOAD .") \ No newline at end of file diff --git a/blender-plugin/addons/SofaNodeEditor/export_old.py b/blender-plugin/addons/SofaNodeEditor/export_old.py new file mode 100644 index 0000000..e69de29 diff --git a/blender-plugin/addons/SofaNodeEditor/minilayout.py b/blender-plugin/addons/SofaNodeEditor/minilayout.py new file mode 100644 index 0000000..6310adc --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/minilayout.py @@ -0,0 +1,45 @@ +class MiniDAGLayout: + """Chat GPT""" + COLUMN_WIDTH = 400 + ROW_HEIGHT = 180 + + def __init__(self, tree): + self.tree = tree + + def compute_levels(self): + levels = {} + visited = set() + + def dfs(node): + if node in levels: + return levels[node] + + incoming = [link.from_node for link in node.inputs[0].links] if node.inputs else [] + + if not incoming: + levels[node] = 0 + else: + levels[node] = max(dfs(parent) for parent in incoming) + 1 + + return levels[node] + + for node in self.tree.nodes: + dfs(node) + + return levels + + def apply(self): + levels = self.compute_levels() + + columns = {} + for node, level in levels.items(): + columns.setdefault(level, []).append(node) + + for level, nodes in columns.items(): + count = len(nodes) + for i, node in enumerate(nodes): + y = (count - 1) * self.ROW_HEIGHT / 2 - i * self.ROW_HEIGHT + node.location = ( + level * self.COLUMN_WIDTH, + y + ) \ No newline at end of file diff --git a/blender-plugin/addons/SofaNodeEditor/modules/SofaBlender.py b/blender-plugin/addons/SofaNodeEditor/modules/SofaBlender.py new file mode 100644 index 0000000..47201db --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/modules/SofaBlender.py @@ -0,0 +1,57 @@ +# SofaBlender version 1.0 +import Sofa + +python2sofa = { + "" : "string", + "" : "float" +} + +class ConstantValue(Sofa.Core.Controller): + def __init__(self, *args, **kwargs): + Sofa.Core.Controller.__init__(self, *args, **kwargs) + + for k,v in kwargs.items(): + if k not in ["name"]: + self.addData(name=k, type=python2sofa[str(type(v))], help="TODO", default=v) + +def addObject(self, type, **kwargs): + tmp = {} + for name, value in kwargs.items(): + if value is not None: + tmp[name] = value + return self.addObject(type, **tmp) + + +import zmq +import threading +import queue + +message_queue = queue.Queue() + +def zmq_listener(): + + context = zmq.Context() + socket = context.socket(zmq.PULL) + socket.bind("tcp://*:5555") + + while True: + data = socket.recv_json() + message_queue.put(data) + +thread = threading.Thread(target=zmq_listener, daemon=True) +thread.start() + +class SofaBlenderLiveHook(Sofa.Core.Controller): + def __init__(self, *args, **kwargs): + Sofa.Core.Controller.__init__(self, *args, **kwargs) + + def onEvent(self, event): + print("EVENT RECEIVED:", event) + + def onIdleEvent(self, event): + while True: + try: + msg = message_queue.get_nowait() + print("Processing:", msg) + except queue.Empty: + pass \ No newline at end of file diff --git a/blender-plugin/addons/SofaNodeEditor/nodes.json b/blender-plugin/addons/SofaNodeEditor/nodes.json new file mode 100644 index 0000000..3bd14c3 --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/nodes.json @@ -0,0 +1,174 @@ +[ { + "classname" : "MechanicalObject", + "category" : "Mechanics", + "default_name" : "state", + "inputs" : [["object", "src"]], + "outputs" : [] + },{ + "classname" : "MeshVTKLoader", + "category" : "Loader", + "default_name" : "loader", + "inputs" : [["filepath", "filename"]], + "outputs" : [] + },{ + "classname" : "MeshOBJLoader", + "category" : "Loader", + "default_name" : "loader", + "inputs" : [["filepath", "filename"]], + "outputs" : [] + },{ + "classname" : "MeshMatrixMass", + "category" : "Mechanics", + "default_name" : "mass", + "inputs" : [["object", "mstate"],["object", "src"]], + "outputs" : [] + },{ + "classname" : "UniformMass", + "category" : "Mechanics", + "default_name" : "mass", + "inputs" : [["object", "mstate"],["object", "src"]], + "outputs" : [] + },{ + "classname" : "StiffSpringForceField", + "category" : "Mechanics", + "default_name" : "forcefield", + "inputs" : [["object", "mstate"],["object", "src"]], + "outputs" : [] + },{ + "classname" : "RegularGridTopology", + "category" : "Topology", + "default_name" : "modifier", + "inputs" : [["object", "src"], ["string","n"],["string","min"],["string","max"]], + "outputs" : [] + },{ + "classname" : "Hexa2TetraTopologicalMapping", + "category" : "Topology", + "default_name" : "convert", + "inputs" : [["object", "src"], ["object","input"],["object","output"], ["bool","swapping"]], + "outputs" : [] + },{ + "classname" : "TetrahedronSetTopologyModifier", + "category" : "Topology", + "default_name" : "modifier", + "inputs" : [["object", "mstate"], ["object", "src"]], + "outputs" : [] + },{ + "classname" : "TetrahedronSetTopologyContainer", + "category" : "Topology", + "default_name" : "topology", + "inputs" : [["object", "mstate"], ["object", "src"]], + "outputs" : [] + },{ + "classname" : "TetrahedronFEMForceField", + "category" : "Mechanics", + "default_name" : "forcefield", + "inputs" : [["object", "mstate"], ["object", "src"], ["float", "youngModulus"], ["float", "poissonRatio"]], + "outputs" : [] + },{ + "classname" : "IdentityMapping", + "category" : "Mapping", + "default_name" : "mapping", + "inputs" : [["object", "input"], ["object", "output"]], + "outputs" : [] + },{ + "classname" : "OglModel", + "category" : "Visual", + "default_name" : "rendering", + "inputs" : [["object", "src"]], + "outputs" : [] + },{ + "classname" : "BlenderObject", + "category" : "Geometry ", + "default_name" : "geom", + "inputs" : [["blender_object", "blender object"]], + "outputs" : [["filepath", "filename"], + ["vector", "location"], + ["vector", "orientation"], + ["vector", "scale"]] + },{ + "classname" : "BlenderController", + "category" : "Controller ", + "default_name" : "controller", + "inputs" : [], + "outputs" : [] + },{ + "classname" : "Matrix", + "category" : "Math", + "default_name" : "self", + "inputs" : [["vector", "translation"], + ["vector", "rotation"], + ["vector", "scale"] + ], + "outputs" : [["object", "transform"] + ] + },{ + "classname" : "Transform", + "category" : "Math", + "default_name" : "self", + "inputs" : [["object", "transform A"], + ["object", "transform B"] + ], + "outputs" : [["object", "transform"] + ] + },{ + "classname" : "MatrixToTRS", + "category" : "Math", + "default_name" : "matrixtrs1", + "inputs" : [["object", "transform"]], + "outputs" : [["vector", "location"], + ["vector", "rotation"], + ["vector", "scale"]] + },{ + "classname" : "TransformEngine", + "category" : "Transform", + "default_name" : "engine", + "inputs" : [["string","input_position"], + ["string", "translation"], + ["vector", "rotation"], + ["vector", "scale"]], + "outputs" : [["string", "output_position"]] + },{ + "classname" : "EulerImplicitSolver", + "category" : "Simulation", + "default_name" : "timeintegration", + "inputs" : [], + "outputs" : [] + },{ + "classname" : "SparseLDLSolver", + "category" : "Simulation", + "default_name" : "numericalsolver", + "inputs" : [], + "outputs" : [] + },{ + "classname" : "CGLinearSolver", + "category" : "Simulation", + "default_name" : "numericalsolver", + "inputs" : [["float","tolerance"],["float", "threshold"],["int", "iterations"]], + "outputs" : [] + },{ + "classname" : "File writer", + "category" : "Experimental", + "default_name" : "Value", + "inputs" : [], + "outputs" : [] + },{ + "classname" : "Pandas processor", + "category" : "Experimental", + "default_name" : "Value", + "inputs" : [], + "outputs" : [] + },{ + "classname" : "ConstantValue", + "category" : "Value", + "default_name" : "values", + "inputs" : [], + "outputs" : [] + }, + { + "classname" : "Time varing values", + "category" : "Experimental", + "default_name" : "time_values", + "inputs" : [], + "outputs" : [] + } +] \ No newline at end of file diff --git a/blender-plugin/addons/SofaNodeEditor/nodes_old.py b/blender-plugin/addons/SofaNodeEditor/nodes_old.py new file mode 100644 index 0000000..3310da8 --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/nodes_old.py @@ -0,0 +1,669 @@ +import bpy +from bpy.types import NodeTree, Node, NodeSocket +import zmq +import inspect +# Implementation of custom nodes from Python +socket = None +zmq_context = None + + #socket = zmq_context.socket(zmq.PUB) + #socket.bind("tcp://*:7134") +import queue +q=queue.Queue() + +import sys, importlib.util + +def import_module_from_string(name: str, source: str): + """ + Import module from source string. + Example use: + import_module_from_string("m", "f = lambda: print('hello')") + m.f() + """ + spec = importlib.util.spec_from_loader(name, loader=None) + module = importlib.util.module_from_spec(spec) + exec(source, module.__dict__) + #sys.modules[name] = module + #globals()[name] = module + return module + +# Derived from the NodeTree base type, similar to Menu, Operator, Panel, etc. +class SofaSimulationTree(NodeTree): + # Description string + '''A sofa simulation''' + # Label for nice name display + bl_label = "Sofa Simulation Editor" + + # Icon identifier + bl_icon = 'NODETREE' + + filename : bpy.props.StringProperty(name="filename", default="") + + +class SofaNodeGroup(bpy.types.NodeTree): + '''My custom node group''' + bl_label = 'Sofa node group' + bl_icon = 'NODETREE' + + #filename : bpy.props.StringProperty(name ="filename", default="XX") + + def init(self): + # initialize node group n + #self.nodes.new('MechanicalObject') + #self.nodes.new('SpringFieldForceField') + #self.nodes.new('SofaNode') + pass + + def update(self): + # update node group when input changes + print("COUCOU") + pass + + def draw_button(self): + for inputs in self.inputs: + prin("COUCOUT") + +# Custom socket type +class SofaSelfSocket(NodeSocket): + # Description string + '''Sofa self socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + # bl_idname = 'CustomSocketType' + + # Label for nice name display + bl_label = "Sofa self" + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + layout.label(text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 1.4, 0.216, 0.5) + +# Custom socket type +class SofaObjectSocket(NodeSocket): + # Description string + '''Sofa object socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + #bl_idname = 'SofaObjectSocket' + + # Label for nice name display + bl_label = "Sofa object" + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + layout.label(text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 1.4, 0.216, 0.5) + +# Custom socket type +class SofaBlenderSocket(NodeSocket): + # Description string + '''Sofa blender socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = 'SofaBlenderSocket' + + # Label for nice name display + bl_label = "Blender data" + + value : bpy.props.StringProperty(default="COUCOU") + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + layout.label(text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 0.0, 0.9, 0.5) + +# Custom socket type +class SofaDataSocket(NodeSocket): + # Description string + '''Sofa data socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + # bl_idname = 'CustomSocketType' + + # Label for nice name display + bl_label = "Blender data" + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + layout.label(text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 0.36, 1.3, 0.5) + + +# Custom socket type +class SofaTemplateSocket(NodeSocket): + # Description string + '''Sofa template socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + # bl_idname = 'CustomSocketType' + + # Label for nice name display + bl_label = "Sofa template" + + # Enum items list + my_items = ( + ('Vec3', "Vec3", "Particles in 3d"), + ('Rigid3', "Rigid3", "Rigid frame") + ) + + my_enum_prop: bpy.props.EnumProperty( + name="template", + description="Just an example", + items=my_items, + default='Vec3', + ) + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + if not self.is_output and self.is_linked: + layout.label(text=text) + else: + layout.prop(self, "my_enum_prop", text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 0.4, 0.216, 0.5) + +# Mix-in class for all custom nodes in this tree type. +# Defines a poll function to enable instantiation. +class MyCustomTreeNode: + @classmethod + def poll(cls, ntree): + return ntree.bl_idname == 'SofaSimulationTree' + +class MyCustomNode(MyCustomTreeNode, Node): + '''My custom node''' + bl_idname = 'CUSTOM_NODE' + bl_label = 'My Custom Node' + bl_icon = 'OBJECT_DATA' + + # define inputs and outputs + my_input: bpy.props.FloatProperty(name='My Input', default=0.0) + my_output: bpy.props.FloatProperty(name='My Output', default=0.0) + + def update(self): + # update node when input changes + self.my_output = self.my_input * 2.0 + +### Node Categories ### +# Node categories are a python system for automatically +# extending the Add menu, toolbar panels and search operator. +# For more examples see release/scripts/startup/nodeitems_builtins.py +import nodeitems_utils +from nodeitems_utils import NodeCategory, NodeItem + +class MyNodeCategory(NodeCategory): + @classmethod + def poll(cls, context): + return context.space_data.tree_type == 'SofaSimulationTree' + +def object_class_generator(node_name, default_name, inputs, outputs): + class SofaObjectNode(MyCustomTreeNode, Node): + # === Basics === + # Description string + '''A custom node''' + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = node_name + + # Label for nice name display + bl_label = node_name + + # === Custom Properties === + # These work just like custom properties in ID data blocks + # Extensive information can be found under + # http://wiki.blender.org/index.php/Doc:2.6/Manual/Extensions/Python/Properties + name: bpy.props.StringProperty(default=default_name) + + def init(self, context): + #self.inputs.new('SofaTemplateSocket', "template") + + if "Prefab" not in node_name: + self.outputs.new('SofaSelfSocket', "self") + self.inputs.new('SofaSelfSocket', "context") + else: + self.use_custom_color = True + self.color = (0.5,0.5,0.5) + + socket_from_type = { + "template" : "SofaTemplateSocket", + "string" : "NodeSocketString", + "object" : "SofaObjectSocket", + "data" : "SofaDataSocket", + "blender_data" : "SofaBlenderSocket", + "vector" : "NodeSocketVector", + "float" : "NodeSocketFloat" + } + for type, name in outputs: + print("CREATE AN OUTPUT... for ", name) + self.outputs.new(socket_from_type[type], name) + + for type, name in inputs: + self.inputs.new(socket_from_type[type], name) + + def socket_value_update(context): + print("Value update...", context) + + def draw_buttons_ext(self, context, layout): + layout.prop(self, "name") + + def draw_buttons(self, context, layout): + if "Prefab Output" in node_name: + node_group = self.id_data + for input_socket in node_group.outputs: + if input_socket.name not in self.inputs: + self.inputs.new(input_socket.bl_socket_idname, input_socket.name) + + + if "Prefab Input" in node_name: + node_group = self.id_data + for output_socket in self.outputs: + if output_socket.name not in node_group.inputs: + self.outputs.remove(output_socket) + + for input_socket in node_group.inputs: + if input_socket.name not in self.outputs: + self.outputs.new(input_socket.bl_socket_idname, input_socket.name) + + # Optional: custom label + # Explicit user label overrides this, but here we can define a label dynamically + def draw_label(self): + return node_name + + def draw_color(self): + return (0.5, 0.4, 0.216, 1.0) + + return SofaObjectNode + +def node_class_generator(node_name, default_name, inputs, outputs): + class SofaPrefabNode(MyCustomTreeNode, Node): + # === Basics === + # Description string + '''A custom node''' + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = node_name + + # Label for nice name display + bl_label = node_name + + # === Custom Properties === + # These work just like custom properties in ID data blocks + # Extensive information can be found under + # http://wiki.blender.org/index.php/Doc:2.6/Manual/Extensions/Python/Properties + name: bpy.props.StringProperty(default=default_name) + type: bpy.props.StringProperty(default="Node") + + def init(self, context): + #self.inputs.new('SofaTemplateSocket', "template") + #self.outputs.new('SofaSelfSocket', "self") + #self.inputs.new('SofaSelfSocket', "context") + + self.use_custom_color = True + self.color = (0.1,0.1,0.1) + socket_from_type = { + "template" : "SofaTemplateSocket", + "string" : "NodeSocketString", + "object" : "SofaObjectSocket", + "data" : "SofaDataSocket", + "blender_data" : "SofaBlenderSocket", + "vector" : "NodeSocketVector", + "float" : "NodeSocketFloat" + } + + #for type, name in outputs: + # self.outputs.new(socket_from_type[type], name) + + #for type, name in inputs: + # self.inputs.new(socket_from_type[type], name) + + def update(self): + if self.type in bpy.data.node_groups: + ng = bpy.data.node_groups[self.type] + + def draw_buttons_ext(self, context, layout): + layout.prop(self, "name") + + def draw_buttons(self, context, layout): + if self.type in bpy.data.node_groups: + ng = bpy.data.node_groups[self.type] + + for input_socket in ng.inputs: + if input_socket.name not in self.inputs: + s = self.inputs.new(input_socket.bl_socket_idname, input_socket.name) + + for output_socket in ng.outputs: + if output_socket.name not in self.outputs: + self.outputs.new(output_socket.bl_socket_idname, output_socket.name) + + layout.prop(self, "type") + + def draw_color(self): + return (0.1, 0.4, 0.216, 0.5) + + # Optional: custom label + # Explicit user label overrides this, but here we can define a label dynamically + def draw_label(self): + return self.type + " ("+self.name+")" + + return SofaPrefabNode + +def python_class_generator(node_name, default_name, inputs, outputs): + class SofaPythonMethodNode(MyCustomTreeNode, Node): + # === Basics === + # Description string + '''A custom node''' + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = node_name + + # Label for nice name display + bl_label = node_name + + # === Custom Properties === + # These work just like custom properties in ID data blocks + # Extensive information can be found under + # http://wiki.blender.org/index.php/Doc:2.6/Manual/Extensions/Python/Properties + name: bpy.props.StringProperty(default=default_name) + type: bpy.props.StringProperty(default="Node") + + def init(self, context): + self.use_custom_color = True + self.color = (0.1,0.1,0.1) + socket_from_type = { + "template" : "SofaTemplateSocket", + "string" : "NodeSocketString", + "object" : "SofaObjectSocket", + "data" : "SofaDataSocket", + "blender_data" : "SofaBlenderSocket", + "vector" : "NodeSocketVector", + "float" : "NodeSocketFloat" + } + + def update(self): + if self.type in bpy.data.node_groups: + ng = bpy.data.node_groups[self.type] + + def draw_buttons_ext(self, context, layout): + layout.prop(self, "name") + + def draw_buttons(self, context, layout): + if self.type in bpy.data.texts: + text = bpy.data.texts[self.type].as_string() + + cname = self.type + if cname.endswith(".py"): + cname = cname[:-3] + + p = import_module_from_string("test", text) + a = inspect.getfullargspec(p.__dict__[cname]) + + for i in range(len(a.args)): + arg = a.args[i] + value = a.defaults[i] + if arg not in self.inputs and arg != "name": + blenderTypes = { + float : "NodeSocketFloat", + str : "NodeSocketString", + list : "NodeSocketVector", + } + if type(value) in blenderTypes: + s = self.inputs.new(blenderTypes[type(value)], arg) + else: + s = self.inputs.new("NodeSocketString", arg) + #for output_socket in ng.outputs: + # if output_socket.name not in self.outputs: + # self.outputs.new(output_socket.bl_socket_idname, output_socket.name) + + layout.prop(self, "type") + + def draw_color(self): + return (0.1, 0.4, 0.216, 0.5) + + def draw_label(self): + return self.type + " ("+self.name+")" + + return SofaPythonMethodNode + + +def unregister_node_cat_types(cats): + from bpy.utils import unregister_class + + try: + bpy.types.NODE_MT_add.remove(cats[1]) + except: + pass + for mt in cats[2]: + try: + bpy.utils.unregister_class(mt) + except: + pass + for pt in cats[3]: + try: + bpy.utils.unregister_class(pt) + except: + pass + +def my_unregister_node_categories(): + for cat_types in nodeitems_utils._node_categories.values(): + try: + unregister_node_cat_types(cat_types) + except: + pass + nodeitems_utils._node_categories.clear() + +def generate_all_nodes(): + from bpy.utils import register_class + + m = { + "classname" : "MechanicalObject", + "category" : "Mechanics", + "default_name" : "state", + "inputs" : [("object", "src"),("string","position")], + "outputs" : [("template", "type")], + } + n = { + "classname" : "MeshObjLoader", + "category" : "Loader", + "default_name" : "loader", + "inputs" : [("string", "filename")], + "outputs" : [("data", "position"),("data", "edges"), ("data", "triangles")], + } + f = { + "classname" : "UniformMass", + "category" : "Mechanics", + "default_name" : "mass", + "inputs" : [("object", "mstate"),("object", "src")], + "outputs" : [], + } + s = { + "classname" : "StiffSpringForceField", + "category" : "Mechanics", + "default_name" : "forcefield", + "inputs" : [("object", "mstate"),("object", "src")], + "outputs" : [], + } + g = { + "classname" : "IdentityMapping", + "category" : "Mapping", + "default_name" : "mapping", + "inputs" : [("object", "input"), ("object", "output")], + "outputs" : [], + } + h = { + "classname" : "OglModel", + "category" : "Visual", + "default_name" : "rendering", + "inputs" : [("object", "src"),("string","filename"),("string","texturename")], + "outputs" : [], + } + i = { + "classname" : "Prefab", + "category" : "Node", + "default_name" : "prefab", + "inputs" : [()], + "outputs" : [()], + } + j = { + "classname" : "BlenderObject", + "category" : "Geometry ", + "default_name" : "geom", + "inputs" : [("string", "blender object")], + "outputs" : [("blender_data", "filename"), + ("vector", "location"), + ("vector", "orientation"), + ("vector", "scale")], + } + blender_controller = { + "classname" : "BlenderController", + "category" : "Controller ", + "default_name" : "controller", + "inputs" : [], + "outputs" : [], + } + + k = { + "classname" : "Prefab Input", + "category" : "Prefab", + "default_name" : "self", + "inputs" : [], + "outputs" : [], + } + l = { + "classname" : "Prefab Output", + "category" : "Prefab", + "default_name" : "self", + "inputs" : [], + "outputs" : [], + } + math_matrix = { + "classname" : "Matrix", + "category" : "Math", + "default_name" : "self", + "inputs" : [("vector", "translation"), + ("vector", "rotation"), + ("vector", "scale"), + ], + "outputs" : [("object", "transform"), + ], + } + + + math_op = { + "classname" : "Transform", + "category" : "Math", + "default_name" : "self", + "inputs" : [("object", "transform A"), + ("object", "transform B"), + ], + "outputs" : [("object", "transform"), + ], + } + math_op_rst = { + "classname" : "MatrixToTRS", + "category" : "Math", + "default_name" : "matrixtrs1", + "inputs" : [("object", "transform")], + "outputs" : [("vector", "location"), + ("vector", "rotation"), + ("vector", "scale")], + } + zz = { + "classname" : "TransformEngine", + "category" : "Transform", + "default_name" : "engine", + "inputs" : [("string","input_position"), + ("string", "translation"), + ("vector", "rotation"), + ("vector", "scale")], + "outputs" : [("string", "output_position")], + } + ts = { + "classname" : "EulerImplicitSolver", + "category" : "Simulation", + "default_name" : "timeintegration", + "inputs" : [], + "outputs" : [], + } + ts0 = { + "classname" : "SparseLDLSolver", + "category" : "Simulation", + "default_name" : "numericalsolver", + "inputs" : [], + "outputs" : [], + } + ts1 = { + "classname" : "CGLinearSolver", + "category" : "Simulation", + "default_name" : "numericalsolver", + "inputs" : [], + "outputs" : [], + } + objects = [m, n, f, g, h, s, i, j,k,l, zz, + blender_controller, math_op, math_matrix, math_op_rst, ts, ts0, ts1] + + print("Registering class... ") + + node_categories = {} + + for object in objects: + name = object["classname"] + category = object["category"] + default_name = object["default_name"] + if category in ["Node"]: + node_class = node_class_generator(name, default_name, object["inputs"], object["outputs"]) + elif name in ["BlenderController"]: + node_class = python_class_generator(name, default_name, object["inputs"], object["outputs"]) + else: + node_class = object_class_generator(name, default_name, object["inputs"], object["outputs"]) + + register_class(node_class) + if category not in node_categories: + node_categories[category] = [] + + node_categories[category].append(name) + + flat_categories = [] + for k,v in node_categories.items(): + flat_categories.append( MyNodeCategory(k, k, items=[NodeItem(n) for n in v] ) ) + + my_unregister_node_categories() + nodeitems_utils.register_node_categories('SOFA_NODES', flat_categories) + + +from bpy.utils import register_class +register_class(SofaSimulationTree) +register_class(SofaNodeGroup) +register_class(SofaTemplateSocket) +register_class(SofaSelfSocket) +register_class(SofaObjectSocket) +register_class(SofaDataSocket) +register_class(SofaBlenderSocket) +register_class(MyCustomNode) + +generate_all_nodes() + + +import threading +import queue + +def register(): + zmq_context = zmq.Context() + + + + + def sofa_msg(socket, q): + while True: + m = q.get() + print("SENDING") + socket.send_string("sofa",zmq.SNDMORE) + #socket.send_pyobj({"MyModel.prefab1" : {"target":input_socket.name, "value":[p,0.0,0.0]}}) + +if __name__ == "__main__": + register() \ No newline at end of file diff --git a/blender-plugin/addons/SofaNodeEditor/operators.py b/blender-plugin/addons/SofaNodeEditor/operators.py new file mode 100644 index 0000000..9c32c7d --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/operators.py @@ -0,0 +1,1008 @@ +import os +import bpy +import addon_utils +import graphlib +import subprocess +from . import sofaerrors +from . import sofainfos +from . import minilayout +import shutil +import re +from pathlib import Path +from contextlib import contextmanager + +@contextmanager +def working_directory(path): + prev_cwd = Path.cwd() + os.chdir(path) + try: + yield + finally: + os.chdir(prev_cwd) + +SOCKET_TYPES = [ + ('NodeSocketFloat', "float", ""), + ('NodeSocketString', "string", ""), + ('NodeSocketInt', "int", ""), + ('NodeSocketBool', "bool", ""), + ('NodeSocketVector', "vec3", ""), + ('NodeSocketColor', "RGBAColor", ""), + ('SofaTemplateSocket', "template",""), + ('SofaObjectSocket', "Sofa Object",""), + ("SofaBlenderSocket", "Blender Object",""), + ("NodeSocketStringFilepath", "filename","") +] + +TEMPLATE_TYPES = [ + ('SofaTemplateSocket', "Vec3d, Rigid3d",""), + ('NodeSocketString', "other", ""), +] + +def node_generate_new_socket_name(node, name, is_input): + target = node.inputs if is_input else node.outputs + i = 0 + newname = name + while newname in target: + i+=1 + newname = f"{name}{i}" + return newname + +def datatype_to_sockettype(sofa_data_type): + types = { + "f" : "NodeSocketFloat", + "d" : "NodeSocketFloat", + "string" : "NodeSocketString", + "bool" : "NodeSocketBool", + "I" : "NodeSocketInt", + "i" : "NodeSocketInt", + "Vec3" : "NodeSocketVector", + "link" : "SofaObjectSocket" + } + if sofa_data_type in types: + return types[sofa_data_type] + + if "vector<" in sofa_data_type: + return "MyCollectionSocket" + + if "vector<" in sofa_data_type: + return "MyCollectionSocket" + + return "NodeSocketString" + +def socket_name_exists(name, sockets): + return any(s.name == name for s in sockets) + +def node_create_socket(name, is_input, type, value, node): + if is_input: + target = node.inputs + else: + target = node.outputs + + if socket_name_exists(name, target): + return False + + socket = target.new(type=type, name=name) + + if value: + socket.default_value = value + target.move(len(target)-1, len(target)-2) + return True + +def get_sofa_blender_install_path(): + for mod in addon_utils.modules(): + if mod.__name__ == "SofaNodeEditor": + print(mod.__file__) + return Path(mod.__file__).parent + raise Exception("Missing plugin") + +def copy_sofa_blender_modules(pathname): + base_modules_path = Path(os.path.join(get_sofa_blender_install_path(), "modules")) + destination = Path(pathname) + shutil.copytree(base_modules_path, destination, dirs_exist_ok=True) + +def get_full_parent_path(node): + if node.parent: + return f"{get_full_parent_path(node.parent)}/{node.name}" + return f"{node.name}" + +def sanitize_name(name): + return re.sub(r'\W|^(?=\d)', '_', name) + +def build_dag(self, node_tree, pathname): + # Build a name without . because Sofa is not supposed to use that kind of name + py_nodename = sanitize_name(node_tree.name) + outfilename = py_nodename + ".py" + asset_path_name = os.path.join(pathname, "assets") + + # In case there is no filename provided we use the default one + if node_tree.filename == "": + node_tree.filename = outfilename + outfilename = node_tree.filename + + outfilename = os.path.join(pathname, outfilename) + + graph = {} + for node in node_tree.nodes: + print(" Node ", node.name) + graph[node] = set() + for input in node.inputs: + for link in input.links: + print(" linked to ", link.from_node.name) + graph[node].add(link.from_node) + if node.parent: + graph[node].add(node.parent) + + # Artificial link for nodes that have been imported (not sure this is a good idea) + predecessor = node.get("predecessor", None) + if predecessor: + graph[node].add(predecessor) + + # Artificial adding a fake edge to force left-to-right saving + if len(graph[node]) == 0: + for onode in node_tree.nodes: + if onode.location[0]+(onode.width/3) < node.location[0]: + graph[node].add(onode) + + # Sorts the nodes to match the graph predecessor's ordering. + ts = graphlib.TopologicalSorter(graph) + sorted_list_of_nodes=list(ts.static_order()) + + print("Preprocessing the graph") + + # Handles imports for both Prefab and Controller + prefab_instances = [] + controller_instances = [] + for current_node in sorted_list_of_nodes: + if current_node.bl_idname == "Prefab": + prefab_instances.append(current_node) + elif current_node.bl_idname == "BlenderController": + controller_instances.append(current_node) + + imports = "" + already_imported = {} + for prefab_instance in prefab_instances: + prefab_name = prefab_instance.type.name + if prefab_name not in already_imported: + imports += "from {} import {}\n".format(prefab_name, prefab_name) + already_imported[prefab_name] = True + + already_imported = {} + for controller_instance in controller_instances: + controller_name = self.get_controller_name(controller_instance.type.name) + if controller_name not in already_imported: + imports += "from {} import {}\n".format(controller_name, controller_name) + already_imported[controller_name] = True + + print("Copying SofaBlender modules") + copy_sofa_blender_modules(pathname) + + print("Recursively saving prefabs:") + for prefab in prefab_instances: + print(f" I should save {pathname}/{prefab.type.name}") + build_dag(self, prefab.type, pathname) + + print(f"Saving main scene: {outfilename}") + f = open(outfilename, "w") + f.write("import Sofa\n") + f.write("from SofaBlender import ConstantValue, addObject, SofaBlenderLiveHook\n") + f.write(imports) + f.write("\n") + + kwargs="" + for item in node_tree.interface.items_tree: + if item.item_type == "SOCKET": + if item.in_out == "INPUT" and item.name: + if hasattr(item,"default_value"): + kwargs += " {}={},".format(item.name, repr(item.default_value)) + else: + kwargs += " {}=None,".format(item.name) + + output_delayed=[] + + f.write("def {}(name='{}',{}):\n".format(py_nodename, py_nodename, kwargs[:-1])) + f.write(" self = Sofa.Core.Node(name)\n") + + # Process input to generated the Data field + id = 0 + for current_node in sorted_list_of_nodes: + if hasattr(current_node,"uid"): + id += 1 + setattr(current_node,'uid',id) + + if current_node.bl_idname == "NodeGroupInput": + for output_socket in current_node.outputs: + type = "string" + if output_socket.bl_idname == "NodeSocketVector": + type = "Vec3d" + elif output_socket.bl_idname == "NodeSocketFloat": + type = "float" + elif output_socket.bl_idname == "NodeSocketString": + type = "string" + elif output_socket.bl_idname == "NodeSocketBool": + type = "bool" + else: + print(f"SOCKET TYPE UNSUPPORTED {output_socket.bl_idname}") + if output_socket.bl_idname not in ["SofaObjectSocket","NodeSocketVirtual"]: + f.write(" if not hasattr(self,'{}'):\n".format(output_socket.name)) + f.write(" self.addData(name='{}', type='{}', help='', group=\"Prefab's inputs\" ,default={})\n".format(output_socket.name, type, output_socket.name)) + f.write(" else:\n") + f.write(" self.{} = {}\n".format(output_socket.name, output_socket.name)) + else: + print(f"NodeGroupInput::socket unsupported '{output_socket.bl_idname}'") + if current_node.bl_idname == "NodeGroupOutput": + for input_socket in current_node.inputs: + if input_socket.bl_idname not in ["NodeSocketVirtual", "SofaObjectSocket", "SofaSelfSocket"]: + f.write(" self.addData(name='{}', type='{}', group=\"Prefab's outputs\", help='')\n".format(input_socket.name, "string")) + else: + f.write(" # Skipped the output socket '{}' because it has unsupported type '{}\n".format(input_socket.name, input_socket.bl_idname)) + + if input_socket.is_linked: + source = input_socket.links[0].from_socket + output_delayed.append((input_socket.name, source)) + + local_context = {"self" : {}} + node2path = {} + for current_node in sorted_list_of_nodes: + if current_node.bl_idname == "NodeGroupInput": + continue + + if current_node.bl_idname == "NodeGroupOutput": + continue + + if current_node.bl_idname == "BlenderController": + blender_name = self.get_controller_name(current_node.type.name) + print("Generating sofa controller from blender ",blender_name) + self.export_controller_to(blender_name, pathname) + + if current_node.bl_idname == "BlenderObject": + try: + blender_object = current_node.inputs["blender object"].object + blender_name = blender_object.name + except Exception as e: + print(f"ERROR, missing object in a BlenderObject with error {e}",) + + current_node.errors = ["blender object"] + sofaerrors.errors[current_node.name] = {"blender object"} + continue + #current_node.nodes.inputs["blender object"].alert = True + + #bpy.ops.object.select_all(action='DESELECT') + for obj in bpy.context.scene.objects: + obj.select_set(False) + + bpy.data.objects[blender_name].select_set(True) + + filename = os.path.join(asset_path_name, blender_name+".obj") + bpy.ops.wm.obj_export(filepath=filename, + forward_axis='Y', + up_axis='Z', + export_selected_objects=True, + export_uv=True, export_materials=True, path_mode='COPY') + + if "filename" in current_node.outputs: + current_node.outputs["filename"].default_value = os.path.relpath(filename, pathname) + if "location" in current_node.outputs: + current_node.outputs["location"].default_value = blender_object.location + if "orientation" in current_node.outputs: + current_node.outputs["orientation"].default_value = blender_object.rotation_euler + if "scale" in current_node.outputs: + current_node.outputs["scale"].default_value = blender_object.scale + + print(" save special blender object values is ", current_node.outputs["filename"].default_value) + continue + + parent = "self" + prefix = "_" + base_name = sanitize_name(current_node.name) + if current_node.parent: + prefix += "_"+get_full_parent_path(current_node.parent).replace("/","_") + + i = 1 + local_name = prefix + "_" + base_name + "__" + while local_name in local_context: + incr_name = local_name+str(i) + if incr_name in local_context: + continue + else: + local_name = local_name+str(i)+"__" + current_node.name = base_name+str(i)+"__" + break + local_context[local_name] = True + + if current_node.parent: + parent = "__"+get_full_parent_path(current_node.parent).replace("/","_")+"__" + + node2path[current_node] = local_name + + args = "" + for input in current_node.inputs: + print(f"Processing edge: {current_node.name}.{input.name}") + + if input.bl_idname == "NodeSocketAny": + continue + if len(input.links) > 0: + for link in input.links: + print(f" - connecting: {current_node.name}.{input.name} <- {link.from_node.name}.{link.from_socket.name} ({link.from_socket.bl_idname})") + if link.from_socket.bl_idname != "SofaBlenderSocket": + if link.from_socket.node.bl_idname == "BlenderObject": + if link.from_socket.bl_idname == "SofaSelfSocket": + if link.to_socket.name in link.from_node.outputs: + args += ", {}={}".format(input.name, repr(link.from_node.outputs[link.to_socket.name].default_value)) + else: + args += ", {}={}.{}.linkpath".format(input.name, link.from_node.name, input.name) + else: + depil = list if link.from_socket.bl_idname == "NodeSocketVector" else lambda x:x + args += ", {}={}".format(input.name, repr(depil(link.from_socket.default_value))) + elif link.from_socket.bl_idname == "SofaSelfSocket": + if input.bl_idname in ["SofaObjectSocket", "SofaSelfSocket"]: + args += ", " + input.name + "=" + node2path[link.from_node] + ".linkpath" + else: + args += ", " + input.name + "=" + node2path[link.from_node] + "." + input.name + ".linkpath" + else: + source_name = str(link.from_node.name) + if link.from_node.bl_idname == "NodeGroupInput": + source_name = "self" + if link.from_node in node2path: + source_name = node2path[link.from_node] + target_name = input.name + if target_name == "src" and link.from_socket.name != "self": + target_name = link.from_socket.name + + mode = ".value" if input.name == "template" else ".linkpath" + if source_name == "self": + args += ", " + target_name + "= (" + source_name + "." + str(link.from_socket.name) + mode + ") " + f" if {link.from_socket.name} is not None else None" + else: + args += ", " + target_name + "= (" + source_name + "." + str(link.from_socket.name) + mode + ") " + else: + print(" Dumping BlenderSocket", dir(link.from_socket)) + args += ", {}='{}'".format(input.name, str(link.from_socket.value)) + else: + if hasattr(input, "default_value") and input.default_value != "": + print(f" - setting value: {current_node.name}.{input.name} = {input.default_value}") + args += ", " + input.name + "=" + repr(input.default_value) + elif hasattr(input, "value") and input.value != "": + print(f" - setting value: {current_node.name}.{input.name} = {input.value}") + args += ", " + input.name + "=" + repr(input.value) + else: + print(f" Unsupported socket saving {current_node.name}.{input.name} (type = {input.bl_idname})") + + if current_node.bl_idname == "ConstantValue": + for socket in current_node.outputs: + if socket.name not in ["","self"]: + args += ", " + socket.name + "=" + repr(current_node[socket.name]) + + if current_node.bl_idname == "SofaBlenderLiveHook": + for socket in current_node.outputs: + if socket.name not in ["","self"]: + args += ", " + socket.name + "=" + repr(current_node[socket.name]) + + current_node.name = sanitize_name(current_node.name) + + if current_node.bl_idname == "BlenderController": + name = self.get_controller_name(controller_instance.type.name) + name1 = name+"1" + f.write(" {} = {}.addObject({}(name='{}' {}))\n".format( + local_name, + parent, + current_node.type.name, + current_node.name, + args)) + elif current_node.bl_idname == "CustomObject": + f.write(" {} = addObject({}, '{}', name='{}' {})\n".format( + local_name, + parent, + current_node.type, + current_node.name, + args)) + elif current_node.bl_idname == "ConstantValue": + f.write(" {} = {}.addObject({}(name='{}' {}))\n".format( + local_name, + parent, + "ConstantValue", + current_node.name, + args)) + elif current_node.bl_idname == "PythonController": + f.write(" {} = {}.addObject({}(name='{}' {}))\n".format( + local_name, + parent, + "SofaBlenderLiveHook", + current_node.name, + args)) + elif current_node.bl_idname == "Prefab": + f.write(" {} = {}.addChild({}(name='{}' {}))\n".format( + local_name, + parent, + current_node.type.name, + current_node.name, + args)) + elif current_node.bl_idname == "NodeFrame": + f.write(" {} = {}.addChild('{}')\n".format( + local_name, + parent, + current_node.name)) + else: + f.write(" {} = addObject({}, '{}', name='{}' {})\n".format( + local_name, + parent, + current_node.bl_idname, + current_node.name, + args)) + + #for current_node in sorted_list_of_nodes: + # if current_node.bl_idname == "Prefab Output": + # for input_socket in current_node.inputs: + # f.write(" self.findData('{}').setParent({}.{}.linkpath)\n".format(input_socket.name, input_socket.links[0].from_socket.node.name, input_socket.links[0].from_socket.name)) + for name, source in output_delayed: + f.write(" self.{} = {}\n".format(name , node2path[source.node])) + + f.write(" self.init() # This is a hack because. Please fix the initialization mechanism\n") + f.write(" return self\n") + f.write("\n") + f.write("""def createScene(root): + root.addChild({}())""".format(py_nodename)) + + f.close() + return outfilename + +def get_base_storage_name(): + filename = bpy.data.filepath + name_without_ext = os.path.splitext(filename)[0] + + return name_without_ext + +def create_then_get_storage_name(): + basename = get_base_storage_name()+".sofa" + if not os.path.exists(basename): + os.mkdir(basename) + asset_name = os.path.join(basename,"assets") + if not os.path.exists(asset_name): + os.mkdir(asset_name) + return basename + +class MESH_OT_sofa_prefab_export(bpy.types.Operator): + """Export a sofa prefab""" + + bl_idname = "sofa.prefab_export" + bl_label = "Export the selected model to sofa" + + def get_controller_name(self, name): + if name.endswith(".py"): + return sanitize_name(name[:-3]) + return sanitize_name(name) + + def build_dag(self, node_tree, node, storage_name): + pathname = create_then_get_storage_name() + try: + return build_dag(self, node_tree, pathname) + except Exception as e: + def draw_error(self, context): + self.layout.label(text=f"Error: {str(e)}") + bpy.context.window_manager.popup_menu(draw_error, title="Erreur", icon='ERROR') + raise e + + def export_controller_to(self, name, pathname): + """Export a controller from the Blender text panel. + The filename is deduced from the name""" + if name in bpy.data.texts: + text = bpy.data.texts[name].as_string() + elif name+".py" in bpy.data.texts: + text = bpy.data.texts[name+".py"].as_string() + + if name.endswith(".py"): + filename = name + else: + filename = name+".py" + + with open(os.path.join(pathname, filename),"wt") as w: + w.write(text) + +def find_target(url, parent_frame): + p = url.split("/") + if p[0] == "@": + # absolute path + + pass + + if p[0] == "@.": + # current node + + pass + + if p[0] == "@..": + # parent node + + pass + + print(f"SECTION {p}") + +def resolve_all_pending_link(node_tree): + for node in node_tree.nodes: + print(f"PROCESSING NODE: {node.name}") + for link in node.inputs: + if hasattr(link, "default_value"): + print(f" - link {link.name, link.default_value}") + find_target(link.default_value) + else: + print(f" - link {link.name} x") + +def import_node(xml_root, parent, node_tree): + node = None + for element in xml_root: + print("PROCESSING ITEM: ", element.tag, element.attrib) + if element.tag == "Node": + node = node_tree.nodes.new("NodeFrame") + node.parent = parent + node.name = sanitize_name(element.get("name", "Unnamed")) + node.label = node.name + import_node(element, node, node_tree) + else: + node = node_tree.nodes.new("CustomObject") + node.type = element.tag + node.name = sanitize_name(element.get("name", "Unnamed")) + node.location = (0, 0) + + if node.type in ["RequiredPlugin"]: + node.hide = True + node.name = sanitize_name("RequiredPlugin") + for name, value in element.attrib.items(): + if name == "name": + s = node.inputs.new(name="pluginName", type="NodeSocketString") + s.default_value = value + else: + s = node.inputs.new(name=name, type="NodeSocketString") + s.default_value = value + else: + for name, value in element.attrib.items(): + if name != "name": + s = node.inputs.new(name=name, type="NodeSocketString") + s.default_value = value + node.parent = parent + + +from bpy_extras.io_utils import ImportHelper +from bpy.props import StringProperty +import xml.etree.ElementTree as ET +class NODE_OT_sofa_scene_import(bpy.types.Operator, ImportHelper): + """Import a SOFA scene""" + + bl_idname = "sofa.scene_import" + bl_label = "Import a SOFA scene" + + filename_ext = ".scn" + filter_glob: bpy.props.StringProperty(default="*.scn", options={'HIDDEN'}) + + def execute(self, context): + node_tree = context.space_data.node_tree + self.report({'INFO'}, 'New SOFA model has been loaded in {}'.format(self.filepath)) + + tree = ET.parse(self.filepath) + root = tree.getroot() + + frame = node_tree.nodes.new("NodeFrame") + frame.label = self.filepath + import_node(root, frame, node_tree) + + #resolve_all_pending_link(node_tree) + + layout = minilayout.MiniDAGLayout(node_tree) + layout.apply() + + return {"FINISHED"} + + +class MESH_OT_sofa_export(MESH_OT_sofa_prefab_export): + """Open firefox""" + + bl_idname = "sofa.export" + bl_label = "Export" + + def execute(self, context): + pathname = create_then_get_storage_name() + + node_tree = context.space_data.node_tree + output_filename = self.build_dag(node_tree, node_tree.nodes.active, pathname) + + self.report({'INFO'}, 'Current Sofa model has been saved in {}'.format(output_filename)) + + return {"FINISHED"} + + + +# import importlib +# import subprocess +# import sys + +# package = "pyzmq" + +# try: +# importlib.import_module("zmq") +# except ImportError: +# subprocess.check_call([sys.executable, "-m", "pip", "install", package]) + +# import zmq +# context = zmq.Context.instance() +# socket = context.socket(zmq.PUSH) +# socket.connect("tcp://localhost:5555") + +# def process_graph(): +# try: + +# def get_my_trees(): +# return [t for t in bpy.data.node_groups] +# nodes = get_my_trees() + +# for node in nodes: +# if hasattr(nodes,"uid"): +# print(f"nodes{getattr(node,'uid')} stream value {node}") + +# socket.send_json({ "event": "node_tree_update"}) +# except Exception as e: +# print("Error sending message to Sofa: ", e) + +# #global graph_dirty +# #if graph_dirty: +# # graph_dirty = False +# # tree = bpy.context.space_data.node_tree +# #data = serialize_tree(tree) +# #zmq_sender.send(data) + +# return 1.0 + +# owner = object() + +# def node_tree_changed(): +# pass +# #socket.send_json({ +# # "event": "node_tree_update" +# #}) + +# is_started = False +# def start_timer_once(): +# global is_started +# if not is_started: +# #bpy.app.timers.register(process_graph) +# is_started = True + +# def subscribe(): + +# bpy.msgbus.subscribe_rna( +# key=(bpy.types.NodeTree, "nodes"), +# owner=owner, +# notify=node_tree_changed, +# ) + +# def unsubscribe(): +# bpy.msgbus.clear_by_owner(owner) + + +class MESH_OT_sofa_prefab_run(MESH_OT_sofa_prefab_export): + """Run the prefab in runSofa""" + + bl_idname = "sofa.prefab_run" + bl_label = "Execute the prefab in sofa" + + def execute(self, context): + pathname = create_then_get_storage_name() + node_tree = context.space_data.node_tree + output_filename = self.build_dag(node_tree, node_tree.nodes.active,pathname) + + self.report({'INFO'}, 'Starting: runSofa {} -i'.format(output_filename)) + with working_directory(pathname): + subprocess.Popen(["runSofa", "-l", "SofaImgui,SofaPython3", output_filename]) + #start_timer_once() + + return {"FINISHED"} + +class MESH_OT_firefox_open(MESH_OT_sofa_prefab_export): + """Open firefox""" + + bl_idname = "firefox.open" + bl_label = "Open firefox on the corresponding help page" + + def execute(self, context): + subprocess.Popen(["firefox", "-new-tab", "https://sofapython3.readthedocs.io/en/latest/content/modules/Sofa/index.html#"]) + return {"FINISHED"} + +class NODE_OT_add_dynamic_input(bpy.types.Operator): + bl_idname = "node.add_dynamic_input" + bl_label = "Open firefox on the corresponding help page" + + def execute(self, context): + node = context.node + node.inputs.new("NodeSocketFloat", f"Value {len(node.inputs)}") + return {'FINISHED'} + + + +class NODE_OT_add_dynamic_socket(bpy.types.Operator): + bl_idname = "node.add_dynamic_socket" + bl_label = "Add Input" + + node_name: bpy.props.StringProperty() + + def execute(self, context): + tree = context.space_data.edit_tree + node = tree.nodes.get(self.node_name) + + if not node: + return {'CANCELLED'} + + # suppression du "+" + plus = node.inputs[-1] + node.inputs.remove(plus) + + # création du vrai socket + node.inputs.new( + "NodeSocketFloat", + f"Value {len(node.inputs)+1}" + ) + + # recréation du "+" + node.inputs.new("NodeSocketAdd", "") + + return {'FINISHED'} + +class NODE_OT_my_search_popup(bpy.types.Operator): + bl_idname = "node.my_search_popup" + bl_label = "Search Item" + bl_property = "value" + + node_classname : bpy.props.StringProperty() + node_name : bpy.props.StringProperty() + is_input : bpy.props.BoolProperty() + + def get_items(self, context): + creator = [("CREATE", "New socket ...", "Creates a new socket field")] + template = [("TEMPLATE", "template", "Specifies the internal type of object")] + + node_classname = self.node_classname + if node_classname is None: + return creator + template + classcreator = sofainfos.get_creator(node_classname) + if classcreator: + return creator + classcreator + template + return creator + template + + def get_non_existing_items(self, context): + node_tree = context.space_data.edit_tree + node = node_tree.nodes.get(self.node_name) + items = NODE_OT_my_search_popup.get_items(self, context) + filtered = [] + for item in items: + if item[0] == "CREATE": + filtered.append(item) + else: + name = "template" if item[0] == "TEMPLATE" else item[0] + if not socket_name_exists(name, node.inputs if self.is_input else node.outputs): + filtered.append(item) + return filtered + + value : bpy.props.EnumProperty(name="value", items=get_non_existing_items) + + + def invoke(self, context, event): + context.window_manager.invoke_search_popup(self) + return {'RUNNING_MODAL'} + + def execute(self, context): + node_tree = context.space_data.edit_tree + node = node_tree.nodes.get(self.node_name) + if not node: + return {"FINISHED"} + + name = node_generate_new_socket_name(node, "new_socket", self.is_input) + + if self.value == "CREATE": + bpy.ops.node.panel_add_socket('INVOKE_DEFAULT', + socket_name = name, + socket_side="INPUT" if self.is_input else "OUTPUT") + return {'FINISHED'} + if self.value == "TEMPLATE": + bpy.ops.node.add_template('INVOKE_DEFAULT', + socket_side="INPUT" if self.is_input else "OUTPUT") + return {'FINISHED'} + + # Query a sofa data type from a pair composed of (classname,dataname) + sofa_data_type = sofainfos.get_datatype(self.node_classname, self.value) + value = sofainfos.get_default_value(self.node_classname, self.value) + node_create_socket(self.value, self.is_input, datatype_to_sockettype(sofa_data_type), value, node) + return {'FINISHED'} + + def draw(self, context): + self.layout.prop(self, "value", text="") + +class NODE_OT_search_sofa_type_popup(bpy.types.Operator): + """Search among the list of available Sofa Component""" + bl_idname = "node.search_sofa_type_popup" + bl_label = "Search Component" + bl_property = "value" + + node_name : bpy.props.StringProperty() + + @staticmethod + def get_items(): + """Returns a dynamic list of component that can be searched from""" + creator = [("CREATE", "New component ...", "Creates a new component")] + + for name in sofainfos.get_components(): + creator.append((name, name, "")) + + return creator + list_of_items = get_items() + + value : bpy.props.EnumProperty(name="value", items=list_of_items) + + def invoke(self, context, event): + context.window_manager.invoke_search_popup(self) + return {'RUNNING_MODAL'} + + def execute(self, context): + node_tree = context.space_data.edit_tree + node = node_tree.nodes.get(self.node_name) + + print("YO LO") + if not node: + return {"FINISHED"} + + print(f"SETTING THE TYPE: {self.value}") + node.type = self.value + + return {'FINISHED'} + +def my_socket_menu(self, context): + node = context.node + socket = context.socket + if not node or not socket: + return + # Ajouter une entrée + op = self.layout.operator("node.remove_socket", text="Remove Socket (Custom)") + op.node_name = node.name + op.socket_name = socket.name + +# Opérateur pour supprimer le socket +class NODE_OT_remove_socket(bpy.types.Operator): + bl_idname = "node.remove_socket" + bl_label = "Remove Socket" + + node_name: bpy.props.StringProperty() + socket_name: bpy.props.StringProperty() + + def execute(self, context): + node_tree = context.space_data.edit_tree + node = node_tree.nodes.get(self.node_name) + if not node: + return {'CANCELLED'} + socket = node.inputs.get(self.socket_name) or node.outputs.get(self.socket_name) + if socket: + if socket.is_input: + node.inputs.remove(socket) + else: + node.outputs.remove(socket) + return {'FINISHED'} + +class NODE_OT_panel_remove_socket(bpy.types.Operator): + bl_idname = "node.panel_remove_socket" + bl_label = "Remove socket" + bl_options = {'UNDO'} + + socket_index: bpy.props.IntProperty() + socket_type : bpy.props.StringProperty() + + @classmethod + def poll(cls, context): + node = context.active_node + return node and (hasattr(node, "inputs") or hasattr(node, "outputs")) + + def execute(self, context): + node = context.active_node + + if self.socket_type == "INPUT": + sockets = node.inputs + else: + sockets = node.outputs + + try: + socket = sockets[self.socket_index] + except IndexError: + return {'CANCELLED'} + + if socket.is_linked: + tree = context.space_data.edit_tree + for link in list(socket.links): + tree.links.remove(link) + + sockets.remove(socket) + return {'FINISHED'} + +class NODE_OT_panel_add_socket(bpy.types.Operator): + bl_idname = "node.panel_add_socket" + bl_label = "Add Socket" + bl_options = {'REGISTER', 'UNDO'} + + socket_name: bpy.props.StringProperty(name="Name", default="NewSocket") + socket_type: bpy.props.EnumProperty(name="Type", items=SOCKET_TYPES, default='NodeSocketFloat') + socket_side :bpy.props.EnumProperty(name="Direction", + items=[("INPUT","Input",""),("OUTPUT","Output","")], default="INPUT") + + @classmethod + def poll(cls, context): + node = context.active_node + return node and hasattr(node, "inputs") + + def invoke(self, context, event): + return context.window_manager.invoke_props_dialog(self) + + def execute(self, context): + node = context.active_node + + if self.socket_side == "INPUT": + target = node.inputs + else: + target = node.outputs + + if socket_name_exists(self.socket_name, target): + return {'CANCELLED'} + + target.new(type=self.socket_type, name=self.socket_name) + target.move(len(target) - 1, len(target) - 2) + return {'FINISHED'} + +class NODE_OT_add_template(bpy.types.Operator): + bl_idname = "node.add_template" + bl_label = "Add template" + bl_options = {'REGISTER', 'UNDO'} + + #socket_name: bpy.props.StringProperty(name="Name", default="NewSocket") + socket_type: bpy.props.EnumProperty(name="Type", items=TEMPLATE_TYPES, default='SofaTemplateSocket') + socket_side :bpy.props.EnumProperty(name="Direction", + items=[("INPUT","Input",""),("OUTPUT","Output","")], default="INPUT") + + @classmethod + def poll(cls, context): + node = context.active_node + return node and hasattr(node, "inputs") + + def invoke(self, context, event): + return context.window_manager.invoke_props_dialog(self) + + def execute(self, context): + node = context.active_node + + if self.socket_side == "INPUT": + target = node.inputs + else: + target = node.outputs + + if socket_name_exists("template", target): + return {'CANCELLED'} + + target.new(type=self.socket_type, name="template") + target.move(len(target) - 1, len(target) - 2) + return {'FINISHED'} + +def register(): + bpy.utils.register_class(NODE_OT_sofa_scene_import) + bpy.utils.register_class(MESH_OT_sofa_export) + bpy.utils.register_class(MESH_OT_sofa_prefab_export) + bpy.utils.register_class(MESH_OT_sofa_prefab_run) + bpy.utils.register_class(MESH_OT_firefox_open) + bpy.utils.register_class(NODE_OT_add_dynamic_input) + bpy.utils.register_class(NODE_OT_add_dynamic_socket) + bpy.utils.register_class(NODE_OT_my_search_popup) + bpy.utils.register_class(NODE_OT_search_sofa_type_popup) + bpy.utils.register_class(NODE_OT_remove_socket) + bpy.utils.register_class(NODE_OT_panel_remove_socket) + bpy.utils.register_class(NODE_OT_panel_add_socket) + bpy.utils.register_class(NODE_OT_add_template) + +def unregister(): + bpy.utils.unregister_class(NODE_OT_sofa_scene_import) + bpy.utils.unregister_class(MESH_OT_sofa_prefab_export) + bpy.utils.unregister_class(MESH_OT_sofa_prefab_run) + bpy.utils.unregister_class(MESH_OT_firefox_open) + bpy.utils.unregister_class(NODE_OT_my_search_popup) + bpy.utils.unregister_class(NODE_OT_search_sofa_type_popup) + bpy.utils.unregister_class(NODE_OT_panel_remove_socket) + bpy.utils.unregister_class(NODE_OT_panel_add_socket) + bpy.utils.unregister_class(NODE_OT_add_template) + diff --git a/blender-plugin/addons/SofaNodeEditor/panels.py b/blender-plugin/addons/SofaNodeEditor/panels.py new file mode 100644 index 0000000..ab7f88f --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/panels.py @@ -0,0 +1,118 @@ +import bpy + +class SofaSimulationPanel(bpy.types.Panel): + """Creates a new panel in the object properties window""" + bl_label = "Sofa Prefab" + bl_idname = "OBJECT_PT_SOFA_PREFAB" + bl_space_type = 'NODE_EDITOR' + bl_region_type = 'UI' + bl_context = "object" + bl_category = "SOFA" + + def draw(self, context): + layout = self.layout + + node_tree = context.space_data.node_tree + + if not node_tree: + return + + row = layout.row() + row.prop(node_tree, "name") + + box = layout.box() + box.label(text="Execute") + row = box.row() + row.operator("sofa.prefab_run", text="Run in Sofa") + + box = layout.box() + box.label(text="Export") + row = box.row() + row.prop(node_tree, "filename") + + row = box.row() + row.operator("sofa.export", text="Export to Sofa") + + box = layout.box() + box.label(text="Import scene") + row = box.row() + row.prop(node_tree, "filename") + + row = box.row() + row.operator("sofa.scene_import", text="Import XML") + + + box = layout.box() + box.label(text="WTF (I need help)") + row = box.row() + row.operator("firefox.open", text="Sofa doc") + + row = box.row() + row.operator("firefox.open", text="Sofa Python3 doc") + + row = box.row() + row.operator("firefox.open", text="Prefab") + + row = box.row() + row.operator("firefox.open", text="Ask chatGPT") + + row = box.row() + row.operator("firefox.open", text="Ask sofa community") + +def socket_name_exists(name, sockets): + return any(s.name == name for s in sockets) + +class NODE_PT_SOFA_SOCKET_LIST(bpy.types.Panel): + bl_label = "Sofa Sockets" + bl_idname = "NODE_PT_SOFA_SOCKET_LIST" + bl_space_type = 'NODE_EDITOR' + bl_region_type = 'UI' + bl_category = "Node" + + #@classmethod + #def poll(cls, context): + # return context.space_data and context.space_data.type == 'NODE_EDITOR' + + def draw(self, context): + layout = self.layout + node = context.active_node + + if not node: + layout.label(text="No selected node", icon='INFO') + return + + box = layout.box() + box.label(text="Input sockets") + for index, socket in enumerate(node.inputs): + if socket.name in ["self",""]: + continue + + row = box.row(align=True) + row.label(text=socket.name, icon='DOT') + op = row.operator("NODE_OT_panel_remove_socket", text="", icon='X') + op.socket_index = index + op.socket_type = "INPUT" + + box = layout.box() + box.label(text="Output sockets") + for index, socket in enumerate(node.outputs): + if socket.name in ["self",""]: + continue + + row = box.row() + row.label(text=socket.name, icon='DOT') + op = row.operator("NODE_OT_panel_remove_socket", text="", icon='X') + op.socket_index = index + op.socket_type = "OUTPUT" + + layout.separator() + layout.operator("NODE_OT_panel_add_socket", icon='ADD') + +def register(): + bpy.utils.register_class(SofaSimulationPanel) + bpy.utils.register_class(NODE_PT_SOFA_SOCKET_LIST) + +def unregister(): + bpy.utils.unregister_class(SofaSimulationPanel) + bpy.utils.unregister_class(NODE_PT_SOFA_SOCKET_LIST) + diff --git a/blender-plugin/addons/SofaNodeEditor/simulationgraph.py b/blender-plugin/addons/SofaNodeEditor/simulationgraph.py new file mode 100644 index 0000000..bd017ad --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/simulationgraph.py @@ -0,0 +1,19 @@ +class Data(object): + name: str + value : str + parent : Data | None + +class Entity(object): + datas : list[object] + links : list[Entity] + +class Component(Entity): + pass + +class Node(Entity): + children : list[Node] + objects : list[Component] + +def serialize_python(graph): + return False + diff --git a/blender-plugin/addons/SofaNodeEditor/sofaerrors.py b/blender-plugin/addons/SofaNodeEditor/sofaerrors.py new file mode 100644 index 0000000..cb42b70 --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/sofaerrors.py @@ -0,0 +1,5 @@ +errors = {} + +def clear(): + global errors + errors = {} \ No newline at end of file diff --git a/blender-plugin/addons/SofaNodeEditor/sofainfos.py b/blender-plugin/addons/SofaNodeEditor/sofainfos.py new file mode 100644 index 0000000..d5e098c --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/sofainfos.py @@ -0,0 +1,100 @@ +import json +import os +from pathlib import Path +import bpy + +def search_description_locations(filename): + path = Path(os.getcwd()) + + found_files = [] + for parent in list(reversed(path.parents)) + [path]: + config_file = os.path.join(parent, filename) + if os.path.exists(config_file): + found_files.append(config_file) + + return found_files + +def initialize_node2data(): + filenames = search_description_locations(".sofa_blender/component_descriptions.json") + + result = {} + data_infos = {} + + for filename in filenames: + print(f"Loading SOFA field database from {filename}") + nodes_description = json.load(open(filename,"r")) + + for object in nodes_description: + classname = object["className"] + result[classname] = [] + + selected_set = set() + for template, creator in object["creator"].items(): + for data in creator["object"]["data"]: + if data["name"] not in selected_set: + selected_set.add(data["name"]) + result[classname].append( + (data["name"], data["name"], f"({data['help']})") + ) + uid = classname + "." + data["name"] + data_infos[uid ] = { + "name" : data["name"], + "help" : data["help"], + "type" : data["type"], + "group" : data["group"], + "default_value" : data["defaultValue"] + } + for link in creator["object"]["link"]: + if link["name"] not in selected_set: + selected_set.add(link["name"]) + result[classname].append( + (link["name"], link["name"], f"({link['help']})") + ) + uid = classname + "." + link["name"] + data_infos[uid] = { + "name" : link["name"], + "help" : link["help"], + "type" : "link", + "group" : None, + "default_value" : None + } + return result, data_infos + +node2data, sofa_data_infos = initialize_node2data() + +def get_components(): + return node2data.keys() + +def get_creator(class_name): + return node2data.get(class_name, None) + +def get_datatype(class_name, data_name): + global sofa_data_infos + uid = class_name + "." + data_name + + if uid not in sofa_data_infos: + print(f"WARNING: Unable to find real type for '{uid}' falling back to type 'string'") + return "string" + + return sofa_data_infos[uid]["type"] + +def get_default_value(class_name, data_name): + global sofa_data_infos + uid = class_name + "." + data_name + + if uid not in sofa_data_infos: + print(f"WARNING: Unable to find real type for '{uid}' falling back to type 'string'") + return "string" + + type = sofa_data_infos[uid]["type"] + if type in ["f","d"]: + return float(sofa_data_infos[uid]["default_value"]) + elif type in ["I","i"]: + return int(sofa_data_infos[uid]["default_value"]) + elif type == "bool": + return bool(sofa_data_infos[uid]["default_value"]) + elif type == "string": + return sofa_data_infos[uid]["default_value"] + + print(f"Type {uid} does not support default value ... please improve") + return None diff --git a/blender-plugin/addons/SofaNodeEditor/sofanodes.py b/blender-plugin/addons/SofaNodeEditor/sofanodes.py new file mode 100644 index 0000000..ec15204 --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/sofanodes.py @@ -0,0 +1,765 @@ +import bpy +from bpy.types import NodeTree, Node, NodeSocket, NodeSocketObject +from . import sofainfos +from . import utils +import inspect + +socket_from_type = { + "template" : "SofaTemplateSocket", + "string" : "NodeSocketString", + "object" : "SofaObjectSocket", + "data" : "SofaDataSocket", + "blender_data" : "SofaBlenderSocket", + "vector" : "NodeSocketVector", + "float" : "NodeSocketFloat", + "int" : "NodeSocketInt", + "blender_object" : "BlenderObjectSocket", + "filepath" : "NodeSocketStringFilePath" + } + +# Derived from the NodeTree base type, similar to Menu, Operator, Panel, etc. +class SofaSimulationTree(NodeTree): + # Description string + '''A sofa simulation''' + # Label for nice name display + bl_label = "Sofa Simulation Editor" + + # Icon identifier + bl_icon = 'NODETREE' + + filename : bpy.props.StringProperty(name="filename", default="") + +class SofaSelfSocket(NodeSocket): + # Description string + '''Sofa self socket type''' + + # Label for nice name display + bl_label = "Sofa self" + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + layout.label(text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 1.4, 0.216, 0.5) + +# Custom socket type +class SofaObjectSocket(NodeSocket): + # Description string + '''Sofa object socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + #bl_idname = 'SofaObjectSocket' + + # Label for nice name display + bl_label = "Sofa object" + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + layout.label(text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 1.4, 0.216, 0.5) + +# Custom socket type +class SofaBlenderSocket(NodeSocket): + # Description string + '''Sofa blender socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = 'SofaBlenderSocket' + + # Label for nice name display + bl_label = "Blender data" + + value : bpy.props.StringProperty(default="COUCOU") + is_valid = False + + def init(self): + self.is_valid = True + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + layout.label(text=text) + + # Socket color + def draw_color(self, context, node): + print("DRAW S") + if self.is_valid: + return (1.0, 0.0, 0.9, 0.5) + return (1.0, 0.0, 0.0, 0.5) + +# Custom socket type +class BlenderObjectSocket(NodeSocketObject): + # Description string + '''Blender Object socket type''' + + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = 'BlenderObjectSocket' + + # Label for nice name display + bl_label = "Blender object" + + def mesh_poll(self, obj): + return obj.type == 'MESH' or obj.type == "CURVE" + + object: bpy.props.PointerProperty(name="Object", type=bpy.types.Object, poll=mesh_poll) + + + def init(self): + super().init() + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + if self.object is None: + layout.alert = True + layout.prop(self, "object", text=text, icon="ERROR") + return + + if self.is_linked: + layout.label(text=text) + else: + layout.alert = False + layout.prop(self, "object", text=text) + + def draw_color(self, context, node): + return (0.2, 0.7, 1.0, 1.0) + +# Custom socket type +class SofaDataSocket(NodeSocket): + # Description string + '''Sofa data socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + # bl_idname = 'CustomSocketType' + + # Label for nice name display + bl_label = "Blender data" + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + layout.label(text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 0.36, 1.3, 0.5) + + +# Custom socket type +class SofaTemplateSocket(NodeSocket): + # Description string + '''Sofa template socket type''' + # Optional identifier string. If not explicitly defined, the python class name is used. + # bl_idname = 'CustomSocketType' + + # Label for nice name display + bl_label = "Sofa template" + + # Enum items list + my_items = ( + ('Vec3', "Vec3", "Particles in 3d"), + ('Rigid3', "Rigid3", "Rigid frame") + ) + + value: bpy.props.EnumProperty( + name="template", + description="Just an example", + items=my_items, + default='Vec3', + ) + + # Optional function for drawing the socket input value + def draw(self, context, layout, node, text): + if not self.is_output and self.is_linked: + layout.label(text=text) + else: + layout.prop(self, "value", text=text) + + # Socket color + def draw_color(self, context, node): + return (1.0, 0.4, 0.216, 0.5) + +# Item de la collection +class MyCollectionItem(bpy.types.PropertyGroup): + value: bpy.props.FloatProperty(name="Value") + +# Socket custom associé à la collection +class MyCollectionSocket(bpy.types.NodeSocket): + bl_idname = "MyCollectionSocket" + bl_label = "Collection Socket" + + # Collection pour stocker les données + items: bpy.props.CollectionProperty(type=MyCollectionItem) + value : bpy.props.StringProperty() + + def draw(self, context, layout, node, text): + # Affiche juste un label et le nombre d'items + #split = layout.split(factor=0.2) + #split.label(icon='MESH_CUBE') # icône à droite + if self.is_linked: + layout.label(text=text) + else: + layout.prop(self,"value", text=text) + + + def draw_color(self, context, node): + return (0.2, 0.6, 1.0, 1.0) + +class NodeSocketAny(bpy.types.NodeSocket): + bl_idname = "NodeSocketAny" + bl_label = "Any" + is_input : bpy.props.BoolProperty(name="is_input",default=True) + + def draw(self, context, layout, node, text): + row = layout.row() + op = row.operator( + "node.my_search_popup", + text="", + icon='PLUS', + emboss=False + ) + + op.node_classname = self.node.type if self.node.bl_idname == "CustomObject" else self.node.bl_idname + op.node_name = self.node.name + op.is_input = self.is_input + + def draw_color(self, context, node): + return (0.6, 0.6, 0.6, 0.6) + + #def draw_context_menu(self, context, layout): + # op = layout.operator( + # "node.remove_socket", + # text="Remove Socket" + # ) + # op.node_classname = self.node.bl_idname + # op.node_name = self.node.bl_idname + +# Mix-in class for all custom nodes in this tree type. +# Defines a poll function to enable instantiation. +class MyCustomTreeNode: + @classmethod + def poll(cls, ntree): + return ntree.bl_idname == 'SofaSimulationTree' + +class MyCustomNode(MyCustomTreeNode, Node): + '''My custom node''' + bl_idname = 'CUSTOM_NODE' + bl_label = 'My Custom Node' + bl_icon = 'OBJECT_DATA' + + # define inputs and outputs + my_input: bpy.props.FloatProperty(name='My Input', default=0.0) + my_output: bpy.props.FloatProperty(name='My Output', default=0.0) + + def update(self): + # update node when input changes + self.my_output = self.my_input * 2.0 + + +class PrefabGroupNode(MyCustomTreeNode, Node): + '''My custom node''' + bl_idname = 'PrefabGroupNode' + bl_label = 'My Custom Node' + bl_icon = 'OBJECT_DATA' + + # define inputs and outputs + my_input: bpy.props.FloatProperty(name='My Input', default=0.0) + my_output: bpy.props.FloatProperty(name='My Output', default=0.0) + + def update(self): + # update node when input changes + self.my_output = self.my_input * 2.0 + +### Node Categories ### +# Node categories are a python system for automatically +# extending the Add menu, toolbar panels and search operator. +# For more examples see release/scripts/startup/nodeitems_builtins.py +import nodeitems_utils +from nodeitems_utils import NodeCategory, NodeItem +from . import sofaerrors + +class MyNodeCategory(NodeCategory): + @classmethod + def poll(cls, context): + return context.space_data.tree_type == 'SofaSimulationTree' + +def socket_name_exists(name, sockets): + return any(s.name == name for s in sockets) + + +def object_class_generator(node_name, default_name, inputs, outputs): + class SofaObjectNode(MyCustomTreeNode, Node): + # === Basics === + # Description string + '''A custom node''' + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = node_name + + # Label for nice name display + bl_label = node_name + bl_icon = 'NODE' + + #selected_item: bpy.props.StringProperty(name="Selected Item") + + canAddInput : bpy.props.BoolProperty(name="canAddInput") = True + canAddOutput : bpy.props.BoolProperty(name="canAddOutput") = True + + # === Custom Properties === + # These work just like custom properties in ID data blocks + # Extensive information can be found under + # http://wiki.blender.org/index.php/Doc:2.6/Manual/Extensions/Python/Properties + #name: bpy.props.StringProperty(default=default_name) + + def update(self): + self.sync_any_socket() + + def sync_any_input(self): + if self.canAddInput and hasattr(self, "inputs"): + if len(self.inputs) == 0: + return + + # sécurité + if self.inputs[-1].bl_idname != "NodeSocketAny": + n = self.inputs.new("NodeSocketAny", "") + n.is_input = True + return + + last = self.inputs[-1] + + # 🔌 connecté → créer un vrai socket + if self.canAddInput and last.is_linked: + links = list(last.links) + n = links[0].from_socket.name + t = links[0].from_socket.bl_idname + if n == "self": + n = "src" + t = "SofaObjectSocket" + + # Remove the links form the current socket if there is one with similar name + if socket_name_exists(n, self.inputs): + tree = bpy.context.space_data.edit_tree + for link in list(links): + tree.links.remove(link) + return + + new = self.inputs.new(str(t), n) + self.id_data.links.new(links[0].from_socket, new) + self.inputs.remove(last) + + n = self.inputs.new("NodeSocketAny", "") + n.is_input = True + + def sync_any_output(self): + if self.canAddOutput and hasattr(self, "outputs"): + if len(self.outputs) == 0: + return + + # check and add the "+" socket if missing + if self.canAddOutput and self.outputs[-1].bl_idname != "NodeSocketAny": + n = self.outputs.new("NodeSocketAny", "") + n.is_input = False + return + + last = self.outputs[-1] + + # 🔌 connecté → créer un vrai socket + if self.canAddOutput and last.is_linked: + links = list(last.links) + n = links[0].to_socket.name + t = links[0].to_socket.bl_idname + + if socket_name_exists(n, self.outputs): + tree = bpy.context.space_data.edit_tree + for link in list(links): + tree.links.remove(link) + return + + new_socket = self.outputs.new(str(t), n) + self.id_data.links.new(new_socket, links[0].to_socket) + + if hasattr(new_socket, 'default_value'): + self[n] = new_socket.default_value + else: + self[n] = None + + self.outputs.remove(last) + + t = self.outputs.new("NodeSocketAny", "") + t.is_input = False + + def sync_any_socket(self): + self.sync_any_input() + self.sync_any_output() + + def init(self, context): + self.name = default_name + if "BlenderObject" != node_name: + self.outputs.new('SofaSelfSocket', "self") + + for type, name in outputs: + s = self.outputs.new(socket_from_type[type], name) + default_value = sofainfos.get_default_value(node_name, name) + + for type, name in inputs: + s = self.inputs.new(socket_from_type[type], name) + default_value = sofainfos.get_default_value(node_name, name) + + self.canAddInput = True + self.canAddOutput = True + + if self.bl_idname == "ConstantValue": + self.canAddInput = False + self.canAddOutput = True + + # Socket creation must always be at the end of the node. + if self.canAddInput: + n = self.inputs.new("NodeSocketAny", "") + n.is_input = True + + if self.canAddOutput: + n = self.outputs.new("NodeSocketAny", "") + n.is_input = False + + def draw_buttons(self, context, layout): + # Si le socket est connecté, afficher le champ pour saisir la valeur + for socket in self.outputs: + row = layout.row(align=True) + if socket.name in self.keys(): + row.prop(self, f'["{socket.name}"]', text=socket.name) + + for socket in self.inputs: + row = layout.row(align=True) + row.alert = True + + # Optional: custom label + # Explicit user label overrides this, but here we can define a label dynamically + def draw_label(self): + if node_name != "BlenderObject": + return f"{node_name} ({self.name})" + + # For BlenderObject nodes, display the name of the selected object + # and its main properties (number of vertices and polygons for meshes, number of control points for curves) + selected_object = self.inputs["blender object"].object + if not selected_object: + return node_name + + depsgraph = bpy.context.evaluated_depsgraph_get() + obj_eval = selected_object.evaluated_get(depsgraph) + mesh = obj_eval.to_mesh() + + vtx = len(mesh.vertices) + polys = len(mesh.polygons) + + return f"{node_name} (polys: {polys}, vtx:{vtx})" + + + return SofaObjectNode + +def socket_type_name(sock): + """ + Retourne une chaîne identifiant le type d'un socket, + qu'il soit NodeSocket ou NodeTreeInterfaceSocket. + """ + # NodeSocket classique + if hasattr(sock, "bl_idname"): + return sock.bl_idname + # NodeTreeInterfaceSocket (inputs/outputs de Node Group) + elif hasattr(sock, "type"): + return sock.type + elif hasattr(sock, "bl_socket_idname"): + return sock.bl_socket_idname + + # Fallback + else: + raise TypeError(f"Type de socket inconnu: {sock}") + +def node_class_generator(node_name, default_name, inputs, outputs): + class SofaPrefabNode(MyCustomTreeNode, Node): + # === Basics === + # Description string + '''A custom node''' + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = node_name + + # Label for nice name display + bl_label = node_name + + # === Custom Properties === + # These work just like custom properties in ID data blocks + # Extensive information can be found under + # http://wiki.blender.org/index.php/Doc:2.6/Manual/Extensions/Python/Properties + name: bpy.props.StringProperty(default=default_name) + type: bpy.props.PointerProperty(type=bpy.types.NodeTree, + update=lambda self, context: self.type_changed(), + poll=lambda self, obj: obj != bpy.context.space_data.node_tree) + + def init(self, context): + self.outputs.new('SofaSelfSocket', "self") + + self.use_custom_color = True + self.color = (0.1,0.1,0.1) + + def type_changed(self): + if self.type is None: + return + + if self.type.name in bpy.data.node_groups: + ng = bpy.data.node_groups[self.type.name] + + # Save the current inputs sockets link before clearing them + input_links_to_save = [(socket.name, link.from_socket) for socket in self.inputs for link in socket.links] + output_links_to_save = [(socket.name, link.to_socket) for socket in self.outputs for link in socket.links] + + print(f"INPUT AND {input_links_to_save} output links to save {output_links_to_save}") + + self.inputs.clear() + self.outputs.clear() + + for item in ng.interface.items_tree: + if item.item_type == "SOCKET": + socket = item + if socket.in_out == "INPUT": + if socket.name not in self.inputs: + self.inputs.new(socket.bl_socket_idname, socket.name) + + if socket.in_out == "OUTPUT": + if socket.name not in self.outputs: + self.outputs.new(socket.bl_socket_idname, socket.name) + + for link in input_links_to_save: + from_socket_name, to_socket = (link) + from_socket = self.inputs.get(from_socket_name) + if from_socket and to_socket: + self.id_data.links.new(from_socket, to_socket) + + for link in output_links_to_save: + from_socket_name, to_socket = (link) + from_socket = self.outputs.get(from_socket_name) + if from_socket and to_socket: + self.id_data.links.new(from_socket, to_socket) + + + def draw_buttons_ext(self, context, layout): + layout.prop(self, "name") + + def draw_buttons(self, context, layout): + layout.prop(self, "type") + + def draw_color(self): + return (0.1, 0.4, 0.216, 0.5) + + # Optional: custom label + # Explicit user label overrides this, but here we can define a label dynamically + def draw_label(self): + if self.type: + return self.type.name+" ("+self.name +")" + return f"undefined ({self.name})" + + return SofaPrefabNode + +def python_class_generator(node_name, default_name, inputs, outputs): + class SofaPythonMethodNode(object_class_generator(node_name,node_name,[],[]), Node): + # === Basics === + # Description string + '''A custom node''' + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = node_name + + # Label for nice name display + bl_label = node_name + + # === Custom Properties === + # These work just like custom properties in ID data blocks + # Extensive information can be found under + # http://wiki.blender.org/index.php/Doc:2.6/Manual/Extensions/Python/Properties + + type: bpy.props.PointerProperty(type=bpy.types.Text, + update=lambda self, context: self.type_changed()) + + def type_changed(self): + if self.type is None: + return + + def init(self, context): + super().init(context) + self.use_custom_color = True + self.color = (0.1,0.1,0.1) + + def draw_buttons(self, context, layout): + layout.prop(self, "type") + + def draw_label(self): + return self.type.name + " ("+self.name+")" + + return SofaPythonMethodNode + + +def unregister_node_cat_types(cats): + from bpy.utils import unregister_class + + try: + bpy.types.NODE_MT_add.remove(cats[1]) + except: + print("REMOVE CATEGORy: ", cats[1]) + pass + + print("CATEGORy: ", cats) + for mt in cats[2]: + try: + bpy.utils.unregister_class(mt) + except: + pass + for pt in cats[3]: + try: + bpy.utils.unregister_class(pt) + except: + pass + +def my_unregister_node_categories(categories): + for cat_types in categories: + try: + unregister_node_cat_types(cat_types) + except: + pass + nodeitems_utils._node_categories.clear() + + +def generate_all_nodes(): + from bpy.utils import register_class + + import json, os + path = os.path.abspath(os.path.dirname(__file__)) + nodes_description = json.load(open(os.path.join(path,"nodes.json"),"r")) + + node_categories = {} + for object in nodes_description: + name = object["classname"] + category = object["category"] + default_name = object["default_name"] + + if category in ["Node"]: + node_class = node_class_generator(name, default_name, object["inputs"], object["outputs"]) + elif name in ["BlenderController"]: + node_class = python_class_generator(name, default_name, object["inputs"], object["outputs"]) + else: + node_class = object_class_generator(name, default_name, object["inputs"], object["outputs"]) + + register_class(node_class) + + if category not in node_categories: + node_categories[category] = [] + + node_categories[category].append(name) + + #print("Categories -> ", node_categories.keys() ) + register_class(node_class_generator("Prefab","Prefab",[],[])) + + class CustomObject(object_class_generator("Custom","Custom",[],[])): + # === Basics === + # Description string + '''A custom node''' + + # Optional identifier string. If not explicitly defined, the python class name is used. + bl_idname = "CustomObject" + + # Label for nice name display + bl_label = "Object" + + bl_width_default = 300 + bl_width_min = 300 + + type: bpy.props.StringProperty(default="", + update=lambda self, context: self.type_changed()) + + def init(self, context): + self.color = (0.1,0.1,0.1) + super().init(context) + + def type_changed(self): + if self.type == "": + self.name = "" + return + + self.name = self.type.lower() + + def draw_buttons(self, context, layout): + is_empty = (self.type == "") + if is_empty: + split = layout.split(factor=0.3) + split.alert = True + split.label(text="type") + op = split.operator( + "node.search_sofa_type_popup", + text="Name", + icon='ERROR', + emboss=True) + op.node_name = self.name + else: + icon = "ASSET_MANAGER" if sofainfos.get_creator(self.type) else "PLUS" + + row = layout.row() + row.prop(self, "type", icon=icon) + + layout.separator() + super().draw_buttons(context, layout) + + # Optional: custom label + # Explicit user label overrides this, but here we can define a label dynamically + def draw_label(self): + if self.type == "": + return f"undefined (CustomObject)" + return f"{self.type} (CustomObject)" + + register_class(CustomObject) + node_categories["Object"]=["CustomObject"] + node_categories["Prefab"]=["Prefab", "NodeGroupInput", "NodeGroupOutput"] + node_categories["Node"] = ["NodeFrame"] + + flat_categories = [] + for k,v in node_categories.items(): + flat_categories.append( MyNodeCategory(k, k, items=[NodeItem(n) for n in v] ) ) + + my_unregister_node_categories(flat_categories) + nodeitems_utils.register_node_categories('SOFA_NODES', flat_categories) + + +from bpy.app.handlers import persistent +@persistent +def auto_node_on_link(scene): + print("AUTO_NODE_ON_LINK") + +def register(): + bpy.utils.register_class(SofaSimulationTree) + bpy.utils.register_class(SofaTemplateSocket) + bpy.utils.register_class(SofaSelfSocket) + bpy.utils.register_class(SofaObjectSocket) + bpy.utils.register_class(SofaDataSocket) + bpy.utils.register_class(SofaBlenderSocket) + bpy.utils.register_class(BlenderObjectSocket) + bpy.utils.register_class(MyCollectionItem) + bpy.utils.register_class(MyCollectionSocket) + + bpy.utils.register_class(NodeSocketAny) + bpy.utils.register_class(MyCustomNode) + bpy.utils.register_class(PrefabGroupNode) + + + if auto_node_on_link not in bpy.app.handlers.depsgraph_update_post: + print("REGISTER... ") + bpy.app.handlers.depsgraph_update_post.append(auto_node_on_link) + + generate_all_nodes() + +def unregister(): + bpy.utils.unregister_class(SofaSimulationTree) + bpy.utils.unregister_class(SofaTemplateSocket) + bpy.utils.unregister_class(SofaSelfSocket) + bpy.utils.unregister_class(SofaObjectSocket) + bpy.utils.unregister_class(SofaDataSocket) + bpy.utils.unregister_class(SofaBlenderSocket) + bpy.utils.unregister_class(BlenderObjectSocket) + bpy.utils.unregister_class(MyCollectionItem) + bpy.utils.unregister_class(MyCollectionSocket) + bpy.utils.unregister_class(NodeSocketAny) + bpy.utils.unregister_class(MyCustomNode) + bpy.utils.unregister_class(PrefabGroupNode) + diff --git a/blender-plugin/addons/SofaNodeEditor/utils.py b/blender-plugin/addons/SofaNodeEditor/utils.py new file mode 100644 index 0000000..370be0a --- /dev/null +++ b/blender-plugin/addons/SofaNodeEditor/utils.py @@ -0,0 +1,129 @@ +import inspect +import sys, importlib.util + +def import_module_from_string(name: str, source: str): + """ + Import module from source string. + Example use: + import_module_from_string("m", "f = lambda: print('hello')") + m.f() + """ + spec = importlib.util.spec_from_loader(name, loader=None) + module = importlib.util.module_from_spec(spec) + exec(source, module.__dict__) + return module + +import re + +from dataclasses import dataclass +from enum import Enum +from typing import List, Optional + +class PathType(Enum): + ABSOLUTE = "absolute" + RELATIVE = "relative" + +@dataclass +class Address: + path_type: PathType + segments: List[str] + up_levels: int = 0 # nombre de ../ + data: Optional[str] = None + +from pathlib import PurePosixPath +from dataclasses import dataclass +from enum import Enum +from typing import List, Optional + + +class PathType(Enum): + ABSOLUTE = "absolute" + RELATIVE = "relative" + + +@dataclass +class Address: + path_type: PathType + segments: List[str] + data: Optional[str] = None + +def resolve_absolute_adress(tree, address): + todo + print("RESOLUTE ABSOLUTE ", address) + +def resolve_relative_adress(node, address): + todo + print("RESOLUTE ABSOLUTE ", address) + +def resolver_adress(tree, node, address : Address): + if address.path_type == PathType.ABSOLUTE: + return resolve_absolute_adress(tree, address) + return resolve_relative_adress(node, address) + +class AddressParser: + def parse(self, text: str) -> Address: + if not text.startswith("@"): + raise ValueError("Address must start with '@'") + + body = text[1:] + + # normalisation avec PurePosixPath + normalized = PurePosixPath(body) + + if normalized.is_absolute(): + path_type = PathType.ABSOLUTE + else: + path_type = PathType.RELATIVE + + # collapse des . et .. + normalized = normalized.resolve() if False else normalized + + # ATTENTION : PurePosixPath ne collapse pas vraiment sans filesystem + # Donc on force via .parts en reconstruisant + + collapsed = PurePosixPath("/").joinpath(normalized).relative_to("/") + + segments = [p for p in collapsed.parts if p not in (".",)] + + data = None + if "." in segments[-1]: + segments[-1], data = segments[-1].rsplit(".", 1) + + return Address( + path_type=path_type, + segments=segments, + data=data + ) + +class MockNode(object): + pass + +class MockTree(object): + def __init__(self): + self.storage = {} + + def add_content(self, path): + elements = path.split("/") + + tmp = self.storage + for element in elements: + if element not in tmp: + tmp[element] = {} + tmp = tmp[element] + +if __name__ == "__main__": + parser = AddressParser() + print(parser.parse("@/theroot/child1/object")) + print(parser.parse("@./object1")) + print(parser.parse("@../../object2")) + print(parser.parse("@../../object2.position")) + + fake_tree = MockTree() + fake_tree.add_content("/theroot/child1/object") + fake_tree.add_content("/theroot/child1/object2") + fake_tree.add_content("/theroot/child2/object") + fake_tree.add_content("/child4/object") + + print(fake_tree.storage) + + resolve_absolute_adress(fake_tree, parser.parse("@/theroot/child1/object")) \ No newline at end of file diff --git a/examples/scenes/.sofa_blender/component_descriptions.json b/examples/scenes/.sofa_blender/component_descriptions.json new file mode 100644 index 0000000..65e9ac8 --- /dev/null +++ b/examples/scenes/.sofa_blender/component_descriptions.json @@ -0,0 +1,120488 @@ +[ + { + "className": "AMDOrderingMethod", + "creator": { + "": { + "class": { + "categories": [ + "OrderingMethod" + ], + "className": "AMDOrderingMethod", + "namespaceName": "sofa::component::linearsolver::ordering", + "parents": [ + "BaseEigenOrderingMethod>" + ], + "shortName": "aMDOrderingMethod", + "templateName": "", + "typeName": "AMDOrderingMethod" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Ordering" + } + }, + "description": "Approximate minimum degree ordering implemented in the Eigen library.\n" + }, + { + "className": "APIVersion", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "APIVersion", + "namespaceName": "sofa::component::sceneutility::_apiversion_", + "parents": [ + "BaseObject" + ], + "shortName": "aPIVersion", + "templateName": "", + "typeName": "APIVersion" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "25.12.99", + "group": "", + "help": "The API Level of the scene ('17.06', '17.12', '18.06', ...)", + "name": "level", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "Specify the APIVersion of the component used in a scene.\n" + }, + { + "className": "AddDataRepository", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "AddDataRepository", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "BaseAddResourceRepository" + ], + "shortName": "addDataRepository", + "templateName": "", + "typeName": "AddDataRepository" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path to add to the pool of resources", + "name": "path", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "Add a path to DataRepository.\n" + }, + { + "className": "AddFrameButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "AddFrameButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "addFrameButtonSetting", + "templateName": "", + "typeName": "AddFrameButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Button setting adding a frame to a skinned model.\n" + }, + { + "className": "AddPluginRepository", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "AddPluginRepository", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "BaseAddResourceRepository" + ], + "shortName": "addPluginRepository", + "templateName": "", + "typeName": "AddPluginRepository" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path to add to the pool of resources", + "name": "path", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "Add a path to PluginRepository.\n" + }, + { + "className": "AddRecordedCameraButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "AddRecordedCameraButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "addRecordedCameraButtonSetting", + "templateName": "", + "typeName": "AddRecordedCameraButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Save Camera's View Point Button configuration.\n" + }, + { + "className": "AffineMovementProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AffineMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "affineMovementProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "AffineMovementProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the mesh", + "name": "meshIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin time of the bilinear constraint", + "name": "beginConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End time of the bilinear constraint", + "name": "endConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "rotation applied to border points", + "name": "rotation", + "type": "Mat3x3d" + }, + { + "defaultValue": "", + "group": "", + "help": "quaternion applied to border points", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "translation applied to border points", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "draw constrained points", + "name": "drawConstrainedPoints", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AffineMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "affineMovementProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "AffineMovementProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the mesh", + "name": "meshIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin time of the bilinear constraint", + "name": "beginConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End time of the bilinear constraint", + "name": "endConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "rotation applied to border points", + "name": "rotation", + "type": "Mat3x3d" + }, + { + "defaultValue": "", + "group": "", + "help": "quaternion applied to border points", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "translation applied to border points", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "draw constrained points", + "name": "drawConstrainedPoints", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Constraint the movement by a rigid transform.\n" + }, + { + "className": "AngularSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "AngularSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField>" + ], + "shortName": "angularSpringFF", + "templateName": "Rigid3d", + "typeName": "AngularSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "index of nodes controlled by the angular springs", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angular stiffness for the controlled nodes", + "name": "angularStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angular limit (max; min) values where the force applies", + "name": "limit", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color", + "name": "springColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Angular springs applied to rotational degrees of freedom of a rigid body or frame.\n" + }, + { + "className": "AnimationLoopParallelScheduler", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "AnimationLoopParallelScheduler", + "namespaceName": "multithreading::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "animationLoopParallelScheduler", + "templateName": "", + "typeName": "AnimationLoopParallelScheduler" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel animation loop, using the Intel tbb library.\n" + }, + { + "className": "AreaMapping", + "creator": { + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "AreaMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "areaMap", + "templateName": "Vec3d,Vec1d", + "typeName": "AreaMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping each triangle in a topology to a scalar value representing its area.\n" + }, + { + "className": "AsyncSparseLDLSolver", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "AsyncSparseLDLSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "SparseLDLSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "asyncSparseLDLSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "AsyncSparseLDLSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the solver will reuse the precomputed symbolic decomposition, meaning that it will store the shape of [factor matrix] on the first step, or when its shape changes, and then it will only update its coefficients. When the shape of the matrix changes, a new factorization is computed.If false, the solver will compute the entire decomposition at each step", + "name": "precomputeSymbolicDecomposition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of non-zero values in the lower triangular matrix of the factorization. The lower, the faster the system is solved.", + "name": "L_nnz", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allow assembly of the linear system", + "name": "enableAssembly", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "AsyncSparseLDLSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "SparseLDLSolver,FullVector,NoThreadManager>" + ], + "shortName": "asyncSparseLDLSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "AsyncSparseLDLSolver,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the solver will reuse the precomputed symbolic decomposition, meaning that it will store the shape of [factor matrix] on the first step, or when its shape changes, and then it will only update its coefficients. When the shape of the matrix changes, a new factorization is computed.If false, the solver will compute the entire decomposition at each step", + "name": "precomputeSymbolicDecomposition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of non-zero values in the lower triangular matrix of the factorization. The lower, the faster the system is solved.", + "name": "L_nnz", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allow assembly of the linear system", + "name": "enableAssembly", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Asynchronous direct Linear Solver using a Sparse LDL^T factorization.\n" + }, + { + "className": "AttachBodyButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "AttachBodyButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "attachBodyButtonSetting", + "templateName": "", + "typeName": "AttachBodyButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Stiffness of the spring to attach a particule", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn spring: if >0 an arrow will be drawn", + "name": "arrowSize", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Show factor size of the JointSpringForcefield when interacting with rigids", + "name": "showFactorSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Attach Body Button configuration.\n" + }, + { + "className": "AttachProjectiveConstraint", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Rigid2d", + "typeName": "AttachProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "AttachProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "AttachProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "AttachProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "AttachProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given pair of particles, projecting the positions of the second particles to the first ones.\n" + }, + { + "className": "AugmentedLagrangianConstraint", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "AugmentedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "BaseContactLagrangianConstraint,Vec<3u,double>,double>,AugmentedLagrangianContactParameters>" + ], + "shortName": "augmentedLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "AugmentedLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "AugmentedLagrangianConstraint\n" + }, + { + "className": "AverageCoord", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "AverageCoord", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "averageCoord", + "templateName": "Rigid2d", + "typeName": "AverageCoord>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "indices of the coordinates to average", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "index of the vector (default value corresponds to core::vec_id::write_access::position )", + "name": "vecId", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "average of the values with the given indices in the given coordinate vector \n(default value corresponds to the average coord of the mechanical context)", + "name": "average", + "type": "RigidCoord2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "AverageCoord", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "averageCoord", + "templateName": "Rigid3d", + "typeName": "AverageCoord>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "indices of the coordinates to average", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "index of the vector (default value corresponds to core::vec_id::write_access::position )", + "name": "vecId", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "average of the values with the given indices in the given coordinate vector \n(default value corresponds to the average coord of the mechanical context)", + "name": "average", + "type": "RigidCoord3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "AverageCoord", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "averageCoord", + "templateName": "Vec2d", + "typeName": "AverageCoord,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "indices of the coordinates to average", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "index of the vector (default value corresponds to core::vec_id::write_access::position )", + "name": "vecId", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "average of the values with the given indices in the given coordinate vector \n(default value corresponds to the average coord of the mechanical context)", + "name": "average", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "AverageCoord", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "averageCoord", + "templateName": "Vec3d", + "typeName": "AverageCoord,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "indices of the coordinates to average", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "index of the vector (default value corresponds to core::vec_id::write_access::position )", + "name": "vecId", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "average of the values with the given indices in the given coordinate vector \n(default value corresponds to the average coord of the mechanical context)", + "name": "average", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Compute the average of coordinates.\n" + }, + { + "className": "BDFOdeSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "BDFOdeSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "BaseLinearMultiStepMethod" + ], + "shortName": "bDFOdeSolver", + "templateName": "", + "typeName": "BDFOdeSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Order of the numerical method", + "name": "order", + "type": "L" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to stiffness, > 0", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass, > 0", + "name": "rayleighMass", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + }, + { + "destinationTypeName": "NewtonRaphsonSolver", + "help": "Link to a Newton-Raphson solver to solve the nonlinear equation produced by this numerical method", + "name": "newtonSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Velocity-based ODE solver using Backward Differentiation Formula (BDF), at any order, supporting variable time step size.\n" + }, + { + "className": "BTDLinearSolver", + "creator": { + "BTDMatrix6d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "BTDLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,BlockVector<6ul,double>,NoThreadManager>" + ], + "shortName": "bTDLinearSolver", + "templateName": "BTDMatrix6d", + "typeName": "BTDLinearSolver,BlockVector<6ul,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump system state at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display debug information about subpartSolve computation", + "name": "showProblem", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Allows for the computation of a subpart of the system", + "name": "subpartSolve", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "verification of the subpartSolve", + "name": "verification", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Linear system solver using Thomas Algorithm for Block Tridiagonal matrices.\n" + }, + { + "className": "BVHNarrowPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "BVHNarrowPhase", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "NarrowPhaseDetection" + ], + "shortName": "bVHNarrowPhase", + "templateName": "", + "typeName": "BVHNarrowPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Narrow phase collision detection based on boundary volume hierarchy.\n" + }, + { + "className": "BackgroundSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "BackgroundSetting", + "namespaceName": "sofa::component::setting", + "parents": [ + "ConfigurationSetting" + ], + "shortName": "backgroundSetting", + "templateName": "", + "typeName": "BackgroundSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Color of the background", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "Image to be used as background", + "name": "image", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Setting" + } + }, + "description": "Background setting.\n" + }, + { + "className": "BarycentricMapping", + "creator": { + "Vec3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "BarycentricMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>>>" + ], + "shortName": "barycentricMap", + "templateName": "Vec3d,Rigid3d", + "typeName": "BarycentricMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use the rest position of the input and output models to initialize the mapping", + "name": "useRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "TopologyBarycentricMapper", + "help": "Internal mapper created depending on the type of topology", + "name": "mapper" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology container (usually the surrounding domain).", + "name": "input_topology" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology container (usually the immersed domain).", + "name": "output_topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "BarycentricMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "barycentricMap", + "templateName": "Vec3d,Vec3d", + "typeName": "BarycentricMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use the rest position of the input and output models to initialize the mapping", + "name": "useRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "TopologyBarycentricMapper", + "help": "Internal mapper created depending on the type of topology", + "name": "mapper" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology container (usually the surrounding domain).", + "name": "input_topology" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology container (usually the immersed domain).", + "name": "output_topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Mapping using barycentric coordinates of the child with respect to cells of its parent.\nMapping using barycentric coordinates of the child with respect to cells of its parent.\n" + }, + { + "className": "BeamFEMForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "BeamFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic::_beamfemforcefield_", + "parents": [ + "BaseLinearElasticityFEMForceField>" + ], + "shortName": "beamFEMFF", + "templateName": "Rigid3d", + "typeName": "BeamFEMForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal element data", + "name": "beamsData", + "type": "vector>BeamInfo,CPUMemoryManager>BeamInfo>>" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "radius of the section", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "inner radius of the section for hollow beams", + "name": "radiusInner", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "apply the forcefield to a subset list of beam segments. If no segment defined, forcefield applies to the whole topology", + "name": "listSegment", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "use symmetric assembly of the matrix K", + "name": "useSymmetricAssembly", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Beam finite elements.\n" + }, + { + "className": "BeamLinearMapping", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "BeamLinearMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "beamLinearMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "BeamLinearMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "true if initial coordinates are in the beam local coordinate system (i.e. a point at (10,0,0) is on the DOF number 10, whereas if this is false it is at whatever position on the beam where the distance from the initial DOF is 10)", + "name": "localCoord", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the positions and velocities of points attached to a beam using linear interpolation between DOFs.\n" + }, + { + "className": "BeamLinearMapping_mt", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "BeamLinearMapping_mt", + "namespaceName": "multithreading::component::mapping::linear", + "parents": [ + "BeamLinearMapping,StdVectorTypes,Vec<3u,double>,double>>" + ], + "shortName": "beamLinearMap_mt", + "templateName": "Rigid3d,Vec3d", + "typeName": "BeamLinearMapping_mt,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "true if initial coordinates are in the beam local coordinate system (i.e. a point at (10,0,0) is on the DOF number 10, whereas if this is false it is at whatever position on the beam where the distance from the initial DOF is 10)", + "name": "localCoord", + "type": "bool" + }, + { + "defaultValue": "32", + "group": "", + "help": "minimum number of Beam points for task creation", + "name": "granularity", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Set the positions and velocities of points attached to a beam using linear interpolation between DOFs.\n" + }, + { + "className": "BilateralLagrangianConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "BilateralLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "PairInteractionConstraint>" + ], + "shortName": "bilateralLagrangianConstraint", + "templateName": "Rigid3d", + "typeName": "BilateralLagrangianConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "index of the constraint on the first model (object1)", + "name": "first_point", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "index of the constraint on the second model (object2)", + "name": "second_point", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Relative position to maintain between attached points (optional)", + "name": "rest_vector", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "control constraint activation (true by default)", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the initial difference in orientation (only for rigids)", + "name": "keepOrientationDifference", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Apply this factor to the constraint force to enable incremental loading. This value should be in the interval [0.0, 1.0].", + "name": "load", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the first topology container", + "name": "topology1" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the second topology container", + "name": "topology2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "BilateralLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "PairInteractionConstraint,Vec<3u,double>,double>>" + ], + "shortName": "bilateralLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "BilateralLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "index of the constraint on the first model (object1)", + "name": "first_point", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "index of the constraint on the second model (object2)", + "name": "second_point", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Relative position to maintain between attached points (optional)", + "name": "rest_vector", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "control constraint activation (true by default)", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the initial difference in orientation (only for rigids)", + "name": "keepOrientationDifference", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Apply this factor to the constraint force to enable incremental loading. This value should be in the interval [0.0, 1.0].", + "name": "load", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the first topology container", + "name": "topology1" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the second topology container", + "name": "topology2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "BilateralLagrangianConstraint defining an holonomic equality constraint (attachment).\n" + }, + { + "className": "BlenderExporter", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Exporter" + ], + "className": "BlenderExporter", + "namespaceName": "sofa::component::_blenderexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "blenderExporter", + "templateName": "Rigid3d", + "typeName": "BlenderExporter>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output path", + "name": "path", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Base name for the output files", + "name": "baseName", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "simulation type (0: soft body, 1: particles, 2:cloth, 3:hair)", + "name": "simulationType", + "type": "i" + }, + { + "defaultValue": "2", + "group": "", + "help": "save the simulation result every step frames", + "name": "step", + "type": "i" + }, + { + "defaultValue": "20", + "group": "", + "help": "number of element by hair strand", + "name": "nbPtsByHair", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + }, + "Vec3d": { + "class": { + "categories": [ + "Exporter" + ], + "className": "BlenderExporter", + "namespaceName": "sofa::component::_blenderexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "blenderExporter", + "templateName": "Vec3d", + "typeName": "BlenderExporter,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output path", + "name": "path", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Base name for the output files", + "name": "baseName", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "simulation type (0: soft body, 1: particles, 2:cloth, 3:hair)", + "name": "simulationType", + "type": "i" + }, + { + "defaultValue": "2", + "group": "", + "help": "save the simulation result every step frames", + "name": "step", + "type": "i" + }, + { + "defaultValue": "20", + "group": "", + "help": "number of element by hair strand", + "name": "nbPtsByHair", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Export the simulation result as blender point cache files.\n" + }, + { + "className": "BlockGaussSeidelConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "BlockGaussSeidelConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "BuiltConstraintSolver" + ], + "shortName": "blockGaussSeidelConstraintSolver", + "templateName": "", + "typeName": "BlockGaussSeidelConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of iterative algorithm", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute graphs of errors and forces during resolution", + "name": "computeGraphs", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's violation at each step of the resolution", + "name": "graphViolations", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraints", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraintGroups", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraint groups", + "name": "currentIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current error", + "name": "currentError", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Build compliances concurrently", + "name": "multithreading", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use SVD decomposiiton of the compliance matrix to project singular values smaller than regularization to the regularization term. Only works with built", + "name": "useSVDForRegularization", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Fraction of the highest singular value bellow which a singular value will be supposed to belong to the nullspace", + "name": "svdSingularValueNullSpaceCriteriaFactor", + "type": "d" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "Absolute value bellow which a component of a normalized base vector will be considered null", + "name": "svdSingularVectorNullSpaceCriteriaFactor", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve Constraint based components using a Block Gauss-Seidel iterative method\n" + }, + { + "className": "BlockJacobiPreconditioner", + "creator": { + "FullVector": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "BlockJacobiPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "blockJacobiPreconditioner", + "templateName": "FullVector", + "typeName": "BlockJacobiPreconditioner,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear solver based on a NxN block diagonal matrix (i.e. block Jacobi preconditioner).\n" + }, + { + "className": "BoxROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI>" + ], + "shortName": "boxROI", + "templateName": "Rigid3d", + "typeName": "BoxROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI,Vec<1u,double>,double>>" + ], + "shortName": "boxROI", + "templateName": "Vec1d", + "typeName": "BoxROI,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI,Vec<2u,double>,double>>" + ], + "shortName": "boxROI", + "templateName": "Vec2d", + "typeName": "BoxROI,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI,Vec<3u,double>,double>>" + ], + "shortName": "boxROI", + "templateName": "Vec3d", + "typeName": "BoxROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI,Vec<6u,double>,double>>" + ], + "shortName": "boxROI", + "templateName": "Vec6d", + "typeName": "BoxROI,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine selecting the any primitives (vertex/edge/triangle/quad/tetrahedron/hexahedron) inside given boxes.\n" + }, + { + "className": "BruteForceBroadPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "BruteForceBroadPhase", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BroadPhaseDetection" + ], + "shortName": "bruteForceBroadPhase", + "templateName": "", + "typeName": "BruteForceBroadPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "if not empty, objects that do not intersect this bounding-box will be ignored", + "name": "box", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Broad phase collision detection using extensive pair-wise tests.\n" + }, + { + "className": "BruteForceDetection", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "BruteForceDetection", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BaseObject" + ], + "shortName": "bruteForceDetection", + "templateName": "", + "typeName": "BruteForceDetection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Combination of brute force broad phase and BVH narrow phase collision detection.\n" + }, + { + "className": "CCDTightInclusionIntersection", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "CCDTightInclusionIntersection", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "BaseProximityIntersection" + ], + "shortName": "cCDTightInclusionIntersection", + "templateName": "", + "typeName": "CCDTightInclusionIntersection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Distance above which the intersection computations ignores the proximity pair. This distance can also be used in some broad phase algorithms to reduce the search area", + "name": "alarmDistance", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Distance below which a contact is created", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "None", + "group": "", + "help": "Data used for continuous collision detection taken into {'None','Inertia','FreeMotion'}. If 'None' then no CCD is used, if 'Inertia' then only inertia will be used to compute the collision detection and if 'FreeMotion' then the free motion will be used. Note that if 'FreeMotion' is selected, you cannot use the option 'parallelCollisionDetectionAndFreeMotion' in the FreeMotionAnimationLoop", + "name": "continuousCollisionType", + "type": "OptionsGroup" + }, + { + "defaultValue": "1e-10", + "group": "", + "help": "tolerance used by the tight inclusion CCD algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maxIterations used by the tight inclusion CCD algorithm", + "name": "maxIterations", + "type": "l" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "A set of methods to compute (for constraint methods) if two primitives are close enough to consider they collide\n" + }, + { + "className": "CGLinearSolver", + "creator": { + "CompressedRowSparseMatrixMat2x2d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat2x2d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat4x4d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat4x4d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat6x6d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat6x6d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat8x8d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat8x8d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "CGLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "FullMatrix", + "typeName": "CGLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "GraphScattered": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver" + ], + "shortName": "cGLinearSolver", + "templateName": "GraphScattered", + "typeName": "CGLinearSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "SparseMatrix", + "typeName": "CGLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "Linear system solver using the conjugate gradient iterative algorithm\n" + }, + { + "className": "COLAMDOrderingMethod", + "creator": { + "": { + "class": { + "categories": [ + "OrderingMethod" + ], + "className": "COLAMDOrderingMethod", + "namespaceName": "sofa::component::linearsolver::ordering", + "parents": [ + "BaseEigenOrderingMethod>" + ], + "shortName": "cOLAMDOrderingMethod", + "templateName": "", + "typeName": "COLAMDOrderingMethod" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Ordering" + } + }, + "description": "Column approximate minimum degree ordering implemented in the Eigen library.\n" + }, + { + "className": "Camera", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "Camera", + "namespaceName": "sofa::component::visual", + "parents": [ + "BaseCamera" + ], + "shortName": "camera", + "templateName": "", + "typeName": "Camera" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's position", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's orientation", + "name": "orientation", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's look at", + "name": "lookAt", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Distance between camera and look at", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "45", + "group": "", + "help": "Camera's FOV", + "name": "fieldOfView", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Camera's zNear", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Camera's zFar", + "name": "zFar", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute Z clip planes (Near and Far) according to the bounding box", + "name": "computeZClip", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "minBBox", + "name": "minBBox", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "maxBBox", + "name": "maxBBox", + "type": "Vec3d" + }, + { + "defaultValue": "800", + "group": "", + "help": "widthViewport", + "name": "widthViewport", + "type": "I" + }, + { + "defaultValue": "600", + "group": "", + "help": "heightViewport", + "name": "heightViewport", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera Type (0 = Perspective, 1 = Orthographic)", + "name": "projectionType", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "", + "help": "Camera activated ?", + "name": "activated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the lookAt point always fixed", + "name": "fixedLookAt", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "A Camera that render the scene from a given location & orientation.\n" + }, + { + "className": "CenterOfMassMapping", + "creator": { + "Rigid2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<2u,double>,double>>>" + ], + "shortName": "centerOfMassMap", + "templateName": "Rigid2d,Vec2d", + "typeName": "CenterOfMassMapping,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "centerOfMassMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "CenterOfMassMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the point to the center of mass of the DOFs it is attached to\n" + }, + { + "className": "CenterOfMassMulti2Mapping", + "creator": { + "Vec3d,Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMulti2Mapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "centerOfMassMulti2Mapping", + "templateName": "Vec3d,Rigid3d,Vec3d", + "typeName": "CenterOfMassMulti2Mapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s) (1st Data type)", + "name": "input1" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s) (2nd Data type)", + "name": "input2" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the point to the center of mass of the DOFs it is attached to.\n" + }, + { + "className": "CenterOfMassMultiMapping", + "creator": { + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "centerOfMassMultiMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "CenterOfMassMultiMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "centerOfMassMultiMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "CenterOfMassMultiMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "centerOfMassMultiMap", + "templateName": "Vec3d,Vec3d", + "typeName": "CenterOfMassMultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the point to the center of mass of the DOFs it is attached to.\n" + }, + { + "className": "CenterPointTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "CenterPointTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "centerPointTopologicalMapping", + "templateName": "", + "typeName": "CenterPointTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where each primitive in the input topology will be mapped to a point in the output topology.\n" + }, + { + "className": "CentralDifferenceSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "CentralDifferenceSolver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "centralDifferenceSolver", + "templateName": "", + "typeName": "CentralDifferenceSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "Explicit time integrator using central difference (also known as Verlet of Leap-frog).\n" + }, + { + "className": "CholeskySolver", + "creator": { + "FullMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CholeskySolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "choleskySolver", + "templateName": "FullMatrix", + "typeName": "CholeskySolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CholeskySolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "choleskySolver", + "templateName": "SparseMatrix", + "typeName": "CholeskySolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver based on Cholesky factorization, for dense matrices.\n" + }, + { + "className": "ClipPlane", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "ClipPlane", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel" + ], + "shortName": "clipPlane", + "templateName": "", + "typeName": "ClipPlane" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Point crossed by the clipping plane", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "1 0 0", + "group": "", + "help": "Normal of the clipping plane, pointing toward the clipped region", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Clipping plane OpenGL ID", + "name": "id", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Control whether the clipping plane should be applied or not", + "name": "active", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Define arbitrary clipping plane into OpenGL.\n" + }, + { + "className": "ClusteringEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ClusteringEngine", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "clusteringEngine", + "templateName": "Vec3d", + "typeName": "ClusteringEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use available topology to compute neighborhood.", + "name": "useTopo", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "Neighborhood range.", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "Neighborhood range (for non mechanical particles).", + "name": "fixedRadius", + "type": "d" + }, + { + "defaultValue": "-1", + "group": "Inputs", + "help": "Number of clusters (-1 means that all input points are selected).", + "name": "number", + "type": "i" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input positions of fixed (non mechanical) particles.", + "name": "fixedPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input rest positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed clusters.", + "name": "cluster", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "import precomputed clusters", + "name": "inFile", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "export clusters", + "name": "outFile", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Group points into overlapping clusters according to a user defined number of clusters and radius.\n" + }, + { + "className": "CollisionPipeline", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "CollisionPipeline", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "Pipeline" + ], + "shortName": "collisionPipeline", + "templateName": "", + "typeName": "CollisionPipeline" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display extra information at each computation step. (default=false)", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the detected collisions. (default=false)", + "name": "draw", + "type": "bool" + }, + { + "defaultValue": "6", + "group": "", + "help": "Max depth of bounding trees. (default=6, min=?, max=?)", + "name": "depth", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "The default collision detection and modeling pipeline.\n" + }, + { + "className": "CollisionResponse", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "CollisionResponse", + "namespaceName": "sofa::component::collision::response::contact", + "parents": [ + "ContactManager" + ], + "shortName": "collisionResponse", + "templateName": "", + "typeName": "CollisionResponse" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "contact response class", + "name": "response", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "contact response parameters (syntax: name1=value1&name2=value2&...)", + "name": "responseParams", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Response.Contact" + } + }, + "description": "Default class to create reactions to the collisions.\n" + }, + { + "className": "CompareState", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "CompareState", + "namespaceName": "sofa::component::playback", + "parents": [ + "ReadState" + ], + "shortName": "compareState", + "templateName": "", + "typeName": "CompareState" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between inputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Transformation", + "help": "scale the input mechanical object", + "name": "scalePos", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "rotate the input mechanical object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "translate the input mechanical object", + "name": "translation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Compare State vectors from a reference frame to the associated Mechanical State.\n" + }, + { + "className": "CompareTopology", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "CompareTopology", + "namespaceName": "sofa::component::playback", + "parents": [ + "ReadTopology" + ], + "shortName": "compareTopology", + "templateName": "", + "typeName": "CompareTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "input file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between inputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Compare Topology containers from a reference frame to the associated Topology.\n" + }, + { + "className": "ComplementaryROI", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ComplementaryROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "complementaryROI", + "templateName": "Vec3d", + "typeName": "ComplementaryROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of sets to complement", + "name": "nbSet", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "indices of the point in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "points in the ROI", + "name": "pointsInROI", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the points that are NOT in the input sets.\n" + }, + { + "className": "CompositeLinearSystem", + "creator": { + "BlockDiagonalMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "BlockDiagonalMatrixMat3x3d", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat2x2d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat2x2d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat4x4d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat4x4d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat6x6d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat6x6d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat8x8d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat8x8d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "DiagonalMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "DiagonalMatrix", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "FullMatrix", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "GraphScattered": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem" + ], + "shortName": "compositeLinearSystem", + "templateName": "GraphScattered", + "typeName": "CompositeLinearSystem" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "RotationMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "RotationMatrixd", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "SparseMatrix", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Matrix-free (unbuilt) linear system.\nComponent acting like a linear system, but delegates the linear system functionalities to a list of real linear systems.\n" + }, + { + "className": "CompositingVisualLoop", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "CompositingVisualLoop", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "DefaultVisualManagerLoop" + ], + "shortName": "compositingVisualLoop", + "templateName": "", + "typeName": "CompositingVisualLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "shaders/compositing.vert", + "group": "", + "help": "Set the vertex shader filename to load", + "name": "vertFilename", + "type": "string" + }, + { + "defaultValue": "shaders/compositing.frag", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fragFilename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "Node", + "help": "Link to the scene's node where the rendering will take place", + "name": "targetNode" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Visual loop enabling multipass rendering. Needs multiple fbo data and a compositing shader.\n" + }, + { + "className": "ConicalForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConicalForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "conicalFF", + "templateName": "Vec3d", + "typeName": "ConicalForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "cone center", + "name": "coneCenter", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "cone height", + "name": "coneHeight", + "type": "Vec3d" + }, + { + "defaultValue": "10", + "group": "", + "help": "cone angle", + "name": "coneAngle", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0 1 1", + "group": "", + "help": "cone color. (default=0.0,0.0,0.0,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Outward repulsion applied by a cone geometry.\n" + }, + { + "className": "ConstantForceField", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "constantFF", + "templateName": "Rigid2d", + "typeName": "ConstantForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "RigidDeriv2d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "constantFF", + "templateName": "Rigid3d", + "typeName": "ConstantForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "RigidDeriv3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "constantFF", + "templateName": "Vec1d", + "typeName": "ConstantForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "Vec1d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "constantFF", + "templateName": "Vec2d", + "typeName": "ConstantForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "Vec2d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "constantFF", + "templateName": "Vec3d", + "typeName": "ConstantForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "constantFF", + "templateName": "Vec6d", + "typeName": "ConstantForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Constant forces applied to given degrees of freedom.\n" + }, + { + "className": "ConstantSparsityPatternSystem", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "ConstantSparsityPatternSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "MatrixLinearSystem,FullVector>" + ], + "shortName": "constantSparsityPatternSystem", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "ConstantSparsityPatternSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Linear system taking advantage of the constant sparsity pattern of the global matrix to speed up the matrix assembly. Do not use if sparsity pattern is not constant (topological changes, ...).\n" + }, + { + "className": "ConstantSparsityProjectionMethod", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "ConstantSparsityProjectionMethod", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "MatrixProjectionMethod>" + ], + "shortName": "constantSparsityProjectionMethod", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "ConstantSparsityProjectionMethod>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if mapping jacobians are considered constant over time. They are computed only the first time.", + "name": "areJacobiansConstant", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute the matrix product in parallel", + "name": "parallelProduct", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Matrix mapping computing the matrix projection taking advantage of the constant sparsity pattern.\n" + }, + { + "className": "ConstraintAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "ConstraintAnimationLoop", + "namespaceName": "sofa::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "constraintAnimationLoop", + "templateName": "", + "typeName": "ConstraintAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display time for each important step of ConstraintAnimationLoop.", + "name": "displayTime", + "type": "bool" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Tolerance of the Gauss-Seidel", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Maximum number of iterations of the Gauss-Seidel", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute the collisions first (to support penality-based contacts)", + "name": "doCollisionsFirst", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Double the buffer dedicated to the constraint problem to make it accessible to another thread", + "name": "doubleBuffer", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Apply new scheme where compliance is progressively corrected", + "name": "schemeCorrection", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If the total computational time T < dt, sleep(dt-T)", + "name": "realTimeCompensation", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Component.AnimationLoop" + } + }, + "description": "Constraint animation loop manager\n" + }, + { + "className": "ConstraintAttachButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "ConstraintAttachButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "constraintAttachButtonSetting", + "templateName": "", + "typeName": "ConstraintAttachButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Attach an object to the mouse using lagrangian multiplier.\n" + }, + { + "className": "ContactListener", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "ContactListener", + "namespaceName": "sofa::component::collision::response::contact", + "parents": [ + "BaseObject" + ], + "shortName": "contactListener", + "templateName": "", + "typeName": "ContactListener" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Response.Contact" + } + }, + "description": "Utility component to retrieve information about contacts.\n" + }, + { + "className": "CubeCollisionModel", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "CubeCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "cubeCollisionModel", + "templateName": "", + "typeName": "CubeCollisionModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model representing a cube.\n" + }, + { + "className": "CubeTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "CubeTopology", + "namespaceName": "sofa::component::topology::container::constant", + "parents": [ + "MeshTopology" + ], + "shortName": "cubeTopology", + "templateName": "", + "typeName": "CubeTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "x grid resolution", + "name": "nx", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "y grid resolution", + "name": "ny", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "z grid resolution", + "name": "nz", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "include internal points (allow a one-to-one mapping between points from RegularGridTopology and CubeTopology)", + "name": "internalPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "split corner points to have planar normals", + "name": "splitNormals", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Constant" + } + }, + "description": "Surface topology of a cube in 3D (points, edges and quads).\n" + }, + { + "className": "CylinderCollisionModel", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "CylinderCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "cylinderCollisionModel", + "templateName": "Rigid3d", + "typeName": "CylinderCollisionModel>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of each cylinder", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The cylinder heights", + "name": "heights", + "type": "vector" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "The default radius", + "name": "defaultRadius", + "type": "d" + }, + { + "defaultValue": "2", + "group": "", + "help": "The default height", + "name": "defaultHeight", + "type": "d" + }, + { + "defaultValue": "0 1 0", + "group": "", + "help": "The default local axis cylinder is modeled around", + "name": "defaultLocalAxis", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model which represents a set of rigid cylinders.\n" + }, + { + "className": "CylinderGridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "CylinderGridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "GridTopology" + ], + "shortName": "cylinderGridTopology", + "templateName": "", + "typeName": "CylinderGridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution. (default = 2 2 2)", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Hexahedra is needed during init (default=true)", + "name": "computeHexaList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Quad is needed during init (default=true)", + "name": "computeQuadList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Triangles is needed during init (default=true)", + "name": "computeTriangleList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Lines is needed during init (default=true)", + "name": "computeEdgeList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Points is needed during init (default=true)", + "name": "computePointList", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, virtual texture coordinates will be generated using 3D interpolation (default=false).", + "name": "createTexCoords", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Center of the cylinder", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 1", + "group": "", + "help": "Main direction of the cylinder", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of the cylinder", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Length of the cylinder along its axis", + "name": "length", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Cylinder grid in 3D.\n" + }, + { + "className": "CylinderVisualModel", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "CylinderVisualModel", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel", + "VisualState,Vec<3u,double>,double>>" + ], + "shortName": "cylinderVisualModel", + "templateName": "", + "typeName": "CylinderVisualModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of the cylinder.", + "name": "radius", + "type": "f" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Color of the cylinders.", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Visualize a set of cylinders.\n" + }, + { + "className": "DampVelocitySolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "DampVelocitySolver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "dampVelocitySolver", + "templateName": "", + "typeName": "DampVelocitySolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.99", + "group": "", + "help": "Factor used to reduce the velocities. Typically between 0 and 1.", + "name": "rate", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Threshold under which the velocities are canceled.", + "name": "threshold", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "Reduce the velocities.\n" + }, + { + "className": "DataDisplay", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "DataDisplay", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel", + "VisualState,Vec<3u,double>,double>>" + ], + "shortName": "dataDisplay", + "templateName": "", + "typeName": "DataDisplay" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Keep the maximal range through all timesteps", + "name": "maximalRange", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with nodes", + "name": "pointData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with triangles", + "name": "triangleData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with quads", + "name": "quadData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with nodes per triangle", + "name": "pointTriangleData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with nodes per quad", + "name": "pointQuadData", + "type": "vector" + }, + { + "defaultValue": "0 0 0 1", + "group": "", + "help": "Color used for NaN values (default=[0.0,0.0,0.0,1.0])", + "name": "colorNaN", + "type": "RGBAColor" + }, + { + "defaultValue": "1 -1", + "group": "", + "help": "Clamp to this values (if max>min)", + "name": "userRange", + "type": "Vec2f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Current min range", + "name": "currentMin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Current max range", + "name": "currentMax", + "type": "d" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Shininess for rendering point-based data [0,128]. <0 means no specularity", + "name": "shininess", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "transparency draw objects with transparency, the value varies between 0. and 1. Where 1. means no transparency and 0 full transparency", + "name": "transparency", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "OglColorMap", + "help": "link to the color map", + "name": "colorMap" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Color rendering of data associated with a mesh.\n" + }, + { + "className": "DataExchange", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "Vec3d", + "typeName": "DataExchange>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Vec3f": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "Vec3f", + "typeName": "DataExchange>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "Vec3f" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "Vec3f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "bool": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "bool", + "typeName": "DataExchange" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "d", + "typeName": "DataExchange" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "f": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "f", + "typeName": "DataExchange" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Component for data memory sharing in the context of multi-threading applications\n" + }, + { + "className": "DefaultAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "DefaultAnimationLoop", + "namespaceName": "sofa::simulation", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "defaultAnimationLoop", + "templateName": "", + "typeName": "DefaultAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, solves all the ODEs in parallel", + "name": "parallelODESolving", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Simulation.Core" + } + }, + "description": "Simulation loop, created by default when the user does not define one in the scene. This loop first computes the collision detection and then solves the physics.\n\nThis loop triggers the following steps:\n- build and solve all linear systems in the scene : collision and time integration to compute the new values of the dofs\n- update the context (dt++)\n- update the mappings\n- update the bounding box (volume covering all objects of the scene)\n" + }, + { + "className": "DefaultVisualManagerLoop", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "DefaultVisualManagerLoop", + "namespaceName": "sofa::simulation", + "parents": [ + "VisualLoop" + ], + "shortName": "defaultVisualManagerLoop", + "templateName": "", + "typeName": "DefaultVisualManagerLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "Node", + "help": "Link to the scene's node where the rendering will take place", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Simulation.Core" + } + }, + "description": "Manager of the visual loop, created by default when the user does not define one in the scene.\n" + }, + { + "className": "DeformableOnRigidFrameMapping", + "creator": { + "Vec3d,Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DeformableOnRigidFrameMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "deformableOnRigidFrameMapping", + "templateName": "Vec3d,Rigid3d,Vec3d", + "typeName": "DeformableOnRigidFrameMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index", + "name": "index", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index starts from the end of input DOFs vector", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dest dofs per entry dof", + "name": "repartition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "are the output DOFs initially expressed in global coordinates", + "name": "globalToLocalCoords", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale factor applied on the angular force accumulated on the rigid model", + "name": "rootAngularForceScaleFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale factor applied on the linear force accumulated on the rigid model", + "name": "rootLinearForceScaleFactor", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s) (1st Data type)", + "name": "input1" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s) (2nd Data type)", + "name": "input2" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the positions and velocities of points attached to a rigid parent.\n" + }, + { + "className": "DiagonalMass", + "creator": { + "Rigid2d,Rigid2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "diagonalMass", + "templateName": "Rigid2d,Rigid2d", + "typeName": "DiagonalMass,StdRigidTypes<2u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Rigid2d,Rigid3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "diagonalMass", + "templateName": "Rigid2d,Rigid3d", + "typeName": "DiagonalMass,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "diagonalMass", + "templateName": "Rigid3d,Rigid3d", + "typeName": "DiagonalMass,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec1d,Vec1d", + "typeName": "DiagonalMass,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec1d,Vec2d", + "typeName": "DiagonalMass,Vec<1u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec1d,Vec3d", + "typeName": "DiagonalMass,Vec<1u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec2d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<2u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec2d,Vec3d", + "typeName": "DiagonalMass,Vec<2u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<3u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec3d,Vec3d", + "typeName": "DiagonalMass,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + } + }, + "description": "Compute a lumped (diagonalized) mass matrix resulting from the space integration of a density over a domain.\n" + }, + { + "className": "DiagonalVelocityDampingForceField", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Rigid2d", + "typeName": "DiagonalVelocityDampingForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Rigid3d", + "typeName": "DiagonalVelocityDampingForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Vec1d", + "typeName": "DiagonalVelocityDampingForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Vec2d", + "typeName": "DiagonalVelocityDampingForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Vec3d", + "typeName": "DiagonalVelocityDampingForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Vec6d", + "typeName": "DiagonalVelocityDampingForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Diagonal velocity damping.\n" + }, + { + "className": "DifferenceEngine", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DifferenceEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "differenceEngine", + "templateName": "Vec1d", + "typeName": "DifferenceEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vector", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "vector to subtract to input", + "name": "substractor", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output vector = input-substractor", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DifferenceEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "differenceEngine", + "templateName": "Vec3d", + "typeName": "DifferenceEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vector", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "vector to subtract to input", + "name": "substractor", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output vector = input-substractor", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Computing the difference between two vector of dofs.\n" + }, + { + "className": "DilateEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DilateEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "dilateEngine", + "templateName": "Vec3d", + "typeName": "DilateEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input mesh triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input mesh quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "point normals", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "point thickness", + "name": "thickness", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "distance to move the points (positive for dilatation, negative for erosion)", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "minimal thickness to enforce", + "name": "minThickness", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Dilates a given mesh by moving vertices along their normal.\n" + }, + { + "className": "DirectSAP", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DirectSAP", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BaseObject" + ], + "shortName": "directSAP", + "templateName": "", + "typeName": "DirectSAP" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Collision detection using sweep and prune.\n" + }, + { + "className": "DirectSAPNarrowPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "DirectSAPNarrowPhase", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "NarrowPhaseDetection" + ], + "shortName": "directSAPNarrowPhase", + "templateName": "", + "typeName": "DirectSAPNarrowPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Show only boxes which will be sent to narrow phase", + "name": "showOnlyInvestigatedBoxes", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "number of pairs of elements sent to narrow phase", + "name": "nbPairs", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Narrow phase of the collision detection using sweep and prune.\n" + }, + { + "className": "DirectionProjectiveConstraint", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "DirectionProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "directionProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "DirectionProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices the particles to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Direction of the line", + "name": "direction", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "DirectionProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "directionProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "DirectionProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices the particles to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Direction of the line", + "name": "direction", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given particles to their initial positions.\n" + }, + { + "className": "DirectionalLight", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "DirectionalLight", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "Light" + ], + "shortName": "directionalLight", + "templateName": "", + "typeName": "DirectionalLight" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Set the color of the light. (default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Set size for shadow texture ", + "name": "shadowTextureSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Light Source", + "name": "drawSource", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZNear", + "name": "zNear", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZFar", + "name": "zFar", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Enable Shadow from this light", + "name": "shadowsEnabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Turn on Soft Shadow from this light", + "name": "softShadows", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Shadow Factor (decrease/increase darkness)", + "name": "shadowFactor", + "type": "f" + }, + { + "defaultValue": "0.05", + "group": "", + "help": "[Shadowing] (VSM only) Light bleeding parameter", + "name": "VSMLightBleeding", + "type": "f" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "[Shadowing] (VSM only) Minimum variance parameter", + "name": "VSMMinVariance", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Texture unit for the generated shadow texture", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "0 0 -1", + "group": "", + "help": "Set the direction of the light", + "name": "direction", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "A directional light illuminating the scene with parallel rays of light (can cast shadows).\n" + }, + { + "className": "DiscreteIntersection", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "DiscreteIntersection", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "Intersection" + ], + "shortName": "discreteIntersection", + "templateName": "", + "typeName": "DiscreteIntersection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "Detect intersection using discrete methods.\n" + }, + { + "className": "DisplacementMatrixEngine", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DisplacementMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DisplacementTransformEngine,Mat<4u,4u,double>>" + ], + "shortName": "displacementMatrixEngine", + "templateName": "Rigid3d", + "typeName": "DisplacementMatrixEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position", + "name": "x0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Current position", + "name": "x", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Displacement transforms with respect to original rigid positions", + "name": "displaceMats", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Scale transformation added to the rigid transformation", + "name": "scales", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Converts a vector of Rigid to a vector of displacement matrices.\n" + }, + { + "className": "DisplacementTransformEngine", + "creator": { + "Rigid3d,Mat4x4d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DisplacementTransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "displacementTransformEngine", + "templateName": "Rigid3d,Mat4x4d", + "typeName": "DisplacementTransformEngine,Mat<4u,4u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position", + "name": "x0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Current position", + "name": "x", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Displacement transforms with respect to original rigid positions", + "name": "displacements", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Rigid3d,RigidCoord3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DisplacementTransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "displacementTransformEngine", + "templateName": "Rigid3d,RigidCoord3d", + "typeName": "DisplacementTransformEngine,RigidCoord<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position", + "name": "x0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Current position", + "name": "x", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Displacement transforms with respect to original rigid positions", + "name": "displacements", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Converts a vector of Rigid to a vector of displacement transforms.\n" + }, + { + "className": "DistanceFromTargetMapping", + "creator": { + "Rigid3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceFromTargetMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceFromTargetMap", + "templateName": "Rigid3d,Vec1d", + "typeName": "DistanceFromTargetMapping,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the parent points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Positions to compute the distances from", + "name": "targetPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display.", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceFromTargetMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceFromTargetMap", + "templateName": "Vec1d,Vec1d", + "typeName": "DistanceFromTargetMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the parent points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Positions to compute the distances from", + "name": "targetPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display.", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceFromTargetMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceFromTargetMap", + "templateName": "Vec3d,Vec1d", + "typeName": "DistanceFromTargetMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the parent points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Positions to compute the distances from", + "name": "targetPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display.", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping point positions to distances from target points.\n" + }, + { + "className": "DistanceMapping", + "creator": { + "Rigid3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceMap", + "templateName": "Rigid3d,Vec1d", + "typeName": "DistanceMapping,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "if 'computeDistance = true', then rest length of each element equal 0, otherwise rest length is the initial length of each of them", + "name": "computeDistance", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceMap", + "templateName": "Vec3d,Vec1d", + "typeName": "DistanceMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "if 'computeDistance = true', then rest length of each element equal 0, otherwise rest length is the initial length of each of them", + "name": "computeDistance", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping each connected pair of Degrees of Freedom (DoFs) in a topology to a scalar value representing the distance between them.\n" + }, + { + "className": "DistanceMultiMapping", + "creator": { + "Rigid3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceMultiMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "MultiMapping,StdVectorTypes,Vec<1u,double>,double>>" + ], + "shortName": "distanceMultiMap", + "templateName": "Rigid3d,Vec1d", + "typeName": "DistanceMultiMapping,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "if 'computeDistance = true', then rest length of each element equal 0, otherwise rest length is the initial length of each of them", + "name": "computeDistance", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceMultiMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "MultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + ], + "shortName": "distanceMultiMap", + "templateName": "Vec3d,Vec1d", + "typeName": "DistanceMultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "if 'computeDistance = true', then rest length of each element equal 0, otherwise rest length is the initial length of each of them", + "name": "computeDistance", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping point positions from several mechanical states to distances (in distance unit).\n" + }, + { + "className": "DistanceToPlaneMapping", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Rigid2d", + "typeName": "DistanceToPlaneMapping>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Rigid3d", + "typeName": "DistanceToPlaneMapping>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Vec2d", + "typeName": "DistanceToPlaneMapping,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Vec3d", + "typeName": "DistanceToPlaneMapping,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec6d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Vec6d", + "typeName": "DistanceToPlaneMapping,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec6d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Mapping that computes the distance to a plane\n" + }, + { + "className": "Distances", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "Distances", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "distances", + "templateName": "Vec3d", + "typeName": "Distances,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Frame DOF index on which display values.", + "name": "showMapIndex", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "show the distance for each point of the target point set.", + "name": "showDistancesMap", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "show the distance for each point of the target point set.", + "name": "showGoalDistancesMap", + "type": "bool" + }, + { + "defaultValue": "0.001", + "group": "Visualization", + "help": "Scale to apply on the text.", + "name": "showTextScaleFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "show gradients for each point of the target point set.", + "name": "showGradients", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "scale for the gradients displayed.", + "name": "showGradientsScaleFactor", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "translation offset between the topology and the point set.", + "name": "offset", + "type": "Vec3d" + }, + { + "defaultValue": "Geodesic", + "group": "", + "help": "type of distance to compute for inserted frames.", + "name": "d_distanceType", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "initialize the target MechanicalObject from the grid.", + "name": "initTarget", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "initialize the target MechanicalObject from the grid using this step.", + "name": "initTargetStep", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "Correspondence between the segmented value and the frames.", + "name": "zonesFramePair", + "type": "map,allocator>>" + }, + { + "defaultValue": "100", + "group": "", + "help": "Max value used to initialize the harmonic distance grid.", + "name": "harmonicMaxValue", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "file containing the result of the computation of the distances", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "path to the goal point set topology", + "name": "targetPath", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "path to the grid used to compute the distances", + "name": "hexaContainerPath", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Compute distances based on a grid.\n" + }, + { + "className": "DynamicSparseGridGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "DynamicSparseGridGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "dynamicSparseGridGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "DynamicSparseGridGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Hexa indices", + "name": "showHexaIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the Hexahedron in the topology", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the hexahedra (between 0 and 1; if <1.0, it produces gaps between the hexahedra)", + "name": "drawScaleHexahedra", + "type": "f" + }, + { + "defaultValue": "1 0.5 0 1", + "group": "Visualization", + "help": "RGB code color used to draw hexahedra.", + "name": "drawColorHexahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "DynamicSparseGridGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "dynamicSparseGridGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "DynamicSparseGridGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Hexa indices", + "name": "showHexaIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the Hexahedron in the topology", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the hexahedra (between 0 and 1; if <1.0, it produces gaps between the hexahedra)", + "name": "drawScaleHexahedra", + "type": "f" + }, + { + "defaultValue": "1 0.5 0 1", + "group": "Visualization", + "help": "RGB code color used to draw hexahedra.", + "name": "drawColorHexahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Dynamic sparse grid geometry algorithms.\n" + }, + { + "className": "DynamicSparseGridTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "DynamicSparseGridTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetTopologyContainer" + ], + "shortName": "dynamicSparseGridTopologyContainer", + "templateName": "", + "typeName": "DynamicSparseGridTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force the creation of a set of quads associated with the hexahedra", + "name": "createQuadArray", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "voxel grid resolution", + "name": "resolution", + "type": "Vec3i" + }, + { + "defaultValue": "", + "group": "", + "help": "values indexed in the Regular Grid", + "name": "valuesIndexedInRegularGrid", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "values indexed in the topology", + "name": "valuesIndexedInTopology", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "indices in the Regular Grid", + "name": "idxInRegularGrid", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "map between id in the Regular Grid and index in the topology", + "name": "idInRegularGrid2IndexInTopo", + "type": "map,allocator>>" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Size of the Voxels", + "name": "voxelSize", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Dynamic sparse grid geometry container.\n" + }, + { + "className": "DynamicSparseGridTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "DynamicSparseGridTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetTopologyModifier" + ], + "shortName": "dynamicSparseGridTopologyModifier", + "templateName": "", + "typeName": "DynamicSparseGridTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Remove isolated DOFs", + "name": "removeIsolated", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Dynamic sparse grid geometry modifier.\n" + }, + { + "className": "Edge2QuadTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Edge2QuadTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "edge2QuadTopologicalMapping", + "templateName": "", + "typeName": "Edge2QuadTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Discretization of created circles", + "name": "nbPointsOnEachCircle", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of created circles in yz plan", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If greater than 0., radius in focal axis of created ellipses", + "name": "radiusFocal", + "type": "d" + }, + { + "defaultValue": "0 0 1", + "group": "", + "help": "In case of ellipses", + "name": "focalAxis", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input edges for the topological mapping: by default, all considered", + "name": "edgeList", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normal ? (Inverse point order when creating quad)", + "name": "flipNormals", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + }, + { + "destinationTypeName": "QuadSetTopologyContainer", + "help": "Output container storing Quads", + "name": "toQuadContainer" + }, + { + "destinationTypeName": "QuadSetTopologyModifier", + "help": "Output modifier handling Quads", + "name": "toQuadModifier" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where EdgeSetTopology is converted to QuadSetTopology.\n" + }, + { + "className": "EdgePressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "EdgePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "edgePressureFF", + "templateName": "Vec3d", + "typeName": "EdgePressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "map between edge indices and their pressure", + "name": "edgePressureMap", + "type": "vector,Vec<3u,double>,double>>EdgePressureInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgePressureInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of edges separated with commas where a pressure is applied", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edges where a pressure is applied", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction for the plane selection of edges", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum distance from the origin along the normal direction", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum distance from the origin along the normal direction", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "pressure intensity on edge normal", + "name": "p_intensity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Binormal of the 2D plane", + "name": "binormal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw arrows of edge pressures", + "name": "showForces", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Apply a force on edges, distributed on the edge nodes.\n" + }, + { + "className": "EdgeSetGeometryAlgorithms", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Rigid2d", + "typeName": "EdgeSetGeometryAlgorithms>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Rigid3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Rigid3d", + "typeName": "EdgeSetGeometryAlgorithms>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec1d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms,Vec<1u,double>,double>>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Vec1d", + "typeName": "EdgeSetGeometryAlgorithms,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "EdgeSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "EdgeSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to an edge topology.\n" + }, + { + "className": "EdgeSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetTopologyContainer" + ], + "shortName": "edgeSetTopologyContainer", + "templateName": "", + "typeName": "EdgeSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container for an edge topology.\n" + }, + { + "className": "EdgeSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetTopologyModifier" + ], + "shortName": "edgeSetTopologyModifier", + "templateName": "", + "typeName": "EdgeSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to an edge topology.\n" + }, + { + "className": "EigenSimplicialLDLT", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSimplicialLDLT", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver,MainSimplicialLDLTFactory>" + ], + "shortName": "eigenSimplicialLDLT", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "EigenSimplicialLDLT>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSimplicialLDLT", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver" + ], + "shortName": "eigenSimplicialLDLT", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "EigenSimplicialLDLT" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse LDL^T factorization.\n" + }, + { + "className": "EigenSimplicialLLT", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSimplicialLLT", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver,MainSimplicialLLTFactory>" + ], + "shortName": "eigenSimplicialLLT", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "EigenSimplicialLLT>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSimplicialLLT", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver" + ], + "shortName": "eigenSimplicialLLT", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "EigenSimplicialLLT" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse LL^T factorization.\n" + }, + { + "className": "EigenSparseLU", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSparseLU", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver,MainLUFactory>" + ], + "shortName": "eigenSparseLU", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "EigenSparseLU>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSparseLU", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver" + ], + "shortName": "eigenSparseLU", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "EigenSparseLU" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse LU factorization.\n" + }, + { + "className": "EigenSparseQR", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSparseQR", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver,MainQRFactory>" + ], + "shortName": "eigenSparseQR", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "EigenSparseQR>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSparseQR", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver" + ], + "shortName": "eigenSparseQR", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "EigenSparseQR" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse QR factorization.\n" + }, + { + "className": "EllipsoidForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "EllipsoidForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "ellipsoidFF", + "templateName": "Vec1d", + "typeName": "EllipsoidForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of contacts", + "name": "contacts", + "type": "vector,Vec<1u,double>,double>>Contact,CPUMemoryManager,Vec<1u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid center", + "name": "center", + "type": "Vec1d" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid radius", + "name": "vradius", + "type": "Vec1d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness (positive to repulse outward, negative inward)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "", + "help": "ellipsoid color. (default=0,0.5,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "EllipsoidForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "ellipsoidFF", + "templateName": "Vec2d", + "typeName": "EllipsoidForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of contacts", + "name": "contacts", + "type": "vector,Vec<2u,double>,double>>Contact,CPUMemoryManager,Vec<2u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid center", + "name": "center", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid radius", + "name": "vradius", + "type": "Vec2d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness (positive to repulse outward, negative inward)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "", + "help": "ellipsoid color. (default=0,0.5,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "EllipsoidForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "ellipsoidFF", + "templateName": "Vec3d", + "typeName": "EllipsoidForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of contacts", + "name": "contacts", + "type": "vector,Vec<3u,double>,double>>Contact,CPUMemoryManager,Vec<3u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid center", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid radius", + "name": "vradius", + "type": "Vec3d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness (positive to repulse outward, negative inward)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "", + "help": "ellipsoid color. (default=0,0.5,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Outward / inward repulsion applied by an ellipsoid geometry.\n" + }, + { + "className": "EulerExplicitSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "EulerExplicitSolver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "eulerExplicitSolver", + "templateName": "", + "typeName": "EulerExplicitSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true (default), the velocities are updated before the positions and the method is symplectic, more robust. If false, the positions are updated before the velocities (standard Euler, less robust).", + "name": "symplectic", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "A simple explicit time integrator.\n" + }, + { + "className": "EulerImplicitSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "EulerImplicitSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "OdeSolver", + "LinearSolverAccessor" + ], + "shortName": "eulerImplicitSolver", + "templateName": "", + "typeName": "EulerImplicitSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to stiffness, > 0", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass, > 0", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Velocity decay coefficient (no decay if null)", + "name": "vdamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use backward Euler scheme for first order ODE system, which means that only the first derivative of the DOFs (state) appears in the equation. Higher derivatives are absent", + "name": "firstOrder", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Boolean to use the trapezoidal scheme instead of the implicit Euler scheme and get second order accuracy in time (false by default)", + "name": "trapezoidalScheme", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Apply ConstraintSolver (requires a ConstraintSolver in the same node as this solver, disabled by by default for now)", + "name": "solveConstraint", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the residual is computed at the end of the solving", + "name": "computeResidual", + "type": "bool" + }, + { + "defaultValue": "1.79769e+308", + "group": "", + "help": "Residual norm at the end of the free-motion solving", + "name": "residual", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Time integrator using implicit backward Euler scheme.\n" + }, + { + "className": "ExtrudeEdgesAndGenerateQuads", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ExtrudeEdgesAndGenerateQuads", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "extrudeEdgesAndGenerateQuads", + "templateName": "Vec3d", + "typeName": "ExtrudeEdgesAndGenerateQuads,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1 0 0", + "group": "", + "help": "Direction along which to extrude the curve", + "name": "extrudeDirection", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Thickness of the extruded volume in the opposite direction of the normals", + "name": "thicknessIn", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the extruded volume in the direction of the normals", + "name": "thicknessOut", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of sections / steps in the extrusion", + "name": "numberOfSections", + "type": "i" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Position coordinates along the initial curve", + "name": "curveVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the edges of the curve to extrude", + "name": "curveEdges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Coordinates of the extruded vertices", + "name": "extrudedVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of all edges generated during the extrusion", + "name": "extrudedEdges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of all quads generated during the extrusion", + "name": "extrudedQuads", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine extruding an edge-based curve into a quad surface patch.\n" + }, + { + "className": "ExtrudeQuadsAndGenerateHexas", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ExtrudeQuadsAndGenerateHexas", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "extrudeQuadsAndGenerateHexas", + "templateName": "Vec3d", + "typeName": "ExtrudeQuadsAndGenerateHexas,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "is Visible ?", + "name": "isVisible", + "type": "bool" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Apply a scaling factor to the extruded mesh", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Thickness of the extruded volume in the opposite direction of the normals", + "name": "thicknessIn", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the extruded volume in the direction of the normals", + "name": "thicknessOut", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of slices / steps in the extrusion", + "name": "numberOfSlices", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will inverse point order when creating hexa", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Position coordinates of the surface", + "name": "surfaceVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the quads of the surface to extrude", + "name": "surfaceQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Coordinates of the extruded vertices", + "name": "extrudedVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of new surface quads generated during the extrusion", + "name": "extrudedSurfaceQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of all quads generated during the extrusion", + "name": "extrudedQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of hexahedra generated during the extrusion", + "name": "extrudedHexas", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine extruding a quad-based surface into a set of hexahedral elements.\n" + }, + { + "className": "ExtrudeSurface", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ExtrudeSurface", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "extrudeSurface", + "templateName": "Vec3d", + "typeName": "ExtrudeSurface,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "is Visible ?", + "name": "isVisible", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor for the height of the extrusion (based on normal)", + "name": "heightFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle topology (list of BaseMeshTopology::Triangle)", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Position coordinates of the extrusion", + "name": "extrusionVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Position coordinates of the surface", + "name": "surfaceVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Subset triangle topology used for the extrusion", + "name": "extrusionTriangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the triangles of the surface to extrude", + "name": "surfaceTriangles", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine creating a mesh from the extrusion of the surface of a given mesh.\n" + }, + { + "className": "FastTetrahedralCorotationalForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "FastTetrahedralCorotationalForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "fastTetrahedralCorotationalFF", + "templateName": "Vec3d", + "typeName": "FastTetrahedralCorotationalForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal point data", + "name": "pointInfo", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal tetrahedron data", + "name": "tetrahedronInfo", + "type": "vector,Vec<3u,double>,double>>TetrahedronRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TetrahedronRestInformation>>" + }, + { + "defaultValue": "qr", + "group": "", + "help": " method for rotation computation :\"qr\" (by QR) or \"polar\" or \"polar2\" or \"none\" (Linear elastic) ", + "name": "method", + "type": "string" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": " draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0 0 1 1", + "group": "Visualization", + "help": " draw color for faces 1", + "name": "drawColor1", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "Visualization", + "help": " draw color for faces 2", + "name": "drawColor2", + "type": "RGBAColor" + }, + { + "defaultValue": "0 1 1 1", + "group": "Visualization", + "help": " draw color for faces 3", + "name": "drawColor3", + "type": "RGBAColor" + }, + { + "defaultValue": "0.5 1 1 1", + "group": "Visualization", + "help": " draw color for faces 4", + "name": "drawColor4", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Fast Corotational Tetrahedral Mesh.\n" + }, + { + "className": "FastTriangularBendingSprings", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "FastTriangularBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "fastTriangularBendingSprings", + "templateName": "Vec3d", + "typeName": "FastTriangularBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Bending stiffness of the material", + "name": "bendingStiffness", + "type": "d" + }, + { + "defaultValue": "1e-06", + "group": "", + "help": "Distance under which a spring is not valid", + "name": "minDistValidity", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeSpring,CPUMemoryManager,Vec<3u,double>,double>>EdgeSpring>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a triangular mesh to prevent bending.\n" + }, + { + "className": "FileMessageHandlerComponent", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "FileMessageHandlerComponent", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "BaseObject" + ], + "shortName": "fileMessageHandlerComponent", + "templateName": "", + "typeName": "FileMessageHandlerComponent" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the file into which the message will be saved in.", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "This component dumps all the messages into a file.\n" + }, + { + "className": "FixPickedParticleButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "FixPickedParticleButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "fixPickedParticleButtonSetting", + "templateName": "", + "typeName": "FixPickedParticleButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + }, + { + "defaultValue": "10000", + "group": "", + "help": "Stiffness of the spring to fix a particule", + "name": "stiffness", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Fix a picked particle in space.\n" + }, + { + "className": "FixedLagrangianConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Rigid3d", + "typeName": "FixedLagrangianConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec1d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<1u,double>,double>>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Vec1d", + "typeName": "FixedLagrangianConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec2d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<2u,double>,double>>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Vec2d", + "typeName": "FixedLagrangianConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<3u,double>,double>>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "FixedLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec6d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<6u,double>,double>>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Vec6d", + "typeName": "FixedLagrangianConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "Lagrangian-based fixation of DOFs of the model.\n" + }, + { + "className": "FixedPlaneProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedPlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedPlaneProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "FixedPlaneProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "normal direction of the plane", + "name": "direction", + "type": "RigidCoord3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum plane distance from the origin", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum plane distance from the origin", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedPlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "fixedPlaneProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "FixedPlaneProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "normal direction of the plane", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum plane distance from the origin", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum plane distance from the origin", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedPlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "fixedPlaneProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "FixedPlaneProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "normal direction of the plane", + "name": "direction", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum plane distance from the origin", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum plane distance from the origin", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Project particles on a given plane.\n" + }, + { + "className": "FixedProjectiveConstraint", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Rigid2d", + "typeName": "FixedProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "FixedProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "FixedProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "FixedProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "FixedProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "FixedProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given particles to their initial positions.\n" + }, + { + "className": "FixedRotationProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedRotationProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedRotationProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "FixedRotationProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent Rotation around X axis", + "name": "FixedXRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent Rotation around Y axis", + "name": "FixedYRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent Rotation around Z axis", + "name": "FixedZRotation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Prevents rotation around x or/and y or/and z axis.\n" + }, + { + "className": "FixedTranslationProjectiveConstraint", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedTranslationProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedTranslationProjectiveConstraint", + "templateName": "Rigid2d", + "typeName": "FixedTranslationProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the fixed points", + "name": "coordinates", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedTranslationProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedTranslationProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "FixedTranslationProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the fixed points", + "name": "coordinates", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedTranslationProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "fixedTranslationProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "FixedTranslationProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the fixed points", + "name": "coordinates", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given rigids to their initial positions but they still can have rotations.\n" + }, + { + "className": "FrameSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "FrameSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField>" + ], + "shortName": "frameSpringFF", + "templateName": "Rigid3d", + "typeName": "FrameSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector>Spring,CPUMemoryManager>Spring>>" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the lawful part of the joint rotation", + "name": "showLawfulTorsion", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the illicit part of the joint rotation", + "name": "showExtraTorsion", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs for Flexibles.\n" + }, + { + "className": "FreeMotionAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "FreeMotionAnimationLoop", + "namespaceName": "sofa::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "freeMotionAnimationLoop", + "templateName": "", + "typeName": "FreeMotionAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "solve separately velocity constraint violations before position constraint violations", + "name": "solveVelocityConstraintFirst", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Multithreading", + "help": "If true, executes free motion step and collision detection step in parallel.", + "name": "parallelCollisionDetectionAndFreeMotion", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Multithreading", + "help": "If true, solves all the ODEs in parallel during the free motion step.", + "name": "parallelODESolving", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "The ConstraintSolver used in this animation loop (required)", + "name": "constraintSolver" + } + ] + }, + "target": "Sofa.Component.AnimationLoop" + } + }, + "description": "\nThe animation loop to use with constraints.\nYou must add this loop at the beginning of the scene if you are using constraints.\"\n" + }, + { + "className": "GIDMeshLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "GIDMeshLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "gIDMeshLoader", + "templateName": "", + "typeName": "GIDMeshLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Load volumetric meshes generated by GID. Some element types are not implemented.\n" + }, + { + "className": "GearSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "GearSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField>" + ], + "shortName": "gearSpringFF", + "templateName": "Rigid3d", + "typeName": "GearSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping", + "name": "spring", + "type": "vector>,CPUMemoryManager>>>" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "period between outputs", + "name": "period", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling reinitialization of the output file at each timestep", + "name": "reinit", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "modify the size of the debug information of a given factor", + "name": "showFactorSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Gear springs for Rigids.\n" + }, + { + "className": "GenerateCylinder", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateCylinder", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateCylinder", + "templateName": "Vec3d", + "typeName": "GenerateCylinder,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points of tetrahedra mesh", + "name": "output_TetrahedraPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points of triangle mesh", + "name": "output_TrianglesPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output triangular mesh", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "weights of rational Bezier triangles", + "name": "BezierTriangleWeights", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "booleans indicating if each Bezier triangle is rational or integral", + "name": "isBezierTriangleRational", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "order of Bezier triangles", + "name": "BezierTriangleDegree", + "type": "L" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "weights of rational Bezier tetrahedra", + "name": "BezierTetrahedronWeights", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "booleans indicating if each Bezier tetrahedron is rational or integral", + "name": "isBezierTetrahedronRational", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "order of Bezier tetrahedra", + "name": "BezierTetrahedronDegree", + "type": "L" + }, + { + "defaultValue": "0.2", + "group": "Inputs", + "help": "input cylinder radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "input cylinder height", + "name": "height", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "cylinder origin point", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "if the cylinder is open at its 2 ends", + "name": "openSurface", + "type": "bool" + }, + { + "defaultValue": "6", + "group": "Inputs", + "help": "Resolution in the circumferential direction", + "name": "resCircumferential", + "type": "L" + }, + { + "defaultValue": "3", + "group": "Inputs", + "help": "Resolution in the radial direction", + "name": "resRadial", + "type": "L" + }, + { + "defaultValue": "5", + "group": "Inputs", + "help": "Resolution in the height direction", + "name": "resHeight", + "type": "L" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine generating a cylindrical tetrahedral mesh.\n" + }, + { + "className": "GenerateGrid", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateGrid", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateGrid", + "templateName": "Vec2d", + "typeName": "GenerateGrid,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh hexahedra", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "the 3 coordinates of the minimum corner", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "the 3 coordinates of the maximum corner", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "3 3 3", + "group": "Inputs", + "help": "the number of cubes in the x,y,z directions. If resolution in the z direction is 0 then a 2D grid is generated", + "name": "resolution", + "type": "Vec3L" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateGrid", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateGrid", + "templateName": "Vec3d", + "typeName": "GenerateGrid,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh hexahedra", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "the 3 coordinates of the minimum corner", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "the 3 coordinates of the maximum corner", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "3 3 3", + "group": "Inputs", + "help": "the number of cubes in the x,y,z directions. If resolution in the z direction is 0 then a 2D grid is generated", + "name": "resolution", + "type": "Vec3L" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine generating a grid tetrahedral or hexahedral mesh.\n" + }, + { + "className": "GenerateRigidMass", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateRigidMass", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateRigidMass", + "templateName": "Rigid3d", + "typeName": "GenerateRigidMass,RigidMass<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "Inputs", + "help": "input: Density of the object", + "name": "density", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input: positions of the vertices", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input: triangles of the mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input: quads of the mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input: polygons of the mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: rigid mass computed", + "name": "rigidMass", + "type": "RigidMass<3u,double>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: mass of the mesh", + "name": "mass", + "type": "d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: volume of the mesh", + "name": "volume", + "type": "d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: the inertia matrix of the mesh", + "name": "inertiaMatrix", + "type": "Mat3x3d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: the gravity center of the mesh", + "name": "massCenter", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: vector going from the mass center to the space origin", + "name": "centerToOrigin", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine computing the RigidMass of a mesh: mass, volume and inertia matrix.\n" + }, + { + "className": "GenerateSphere", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateSphere", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateSphere", + "templateName": "Vec3d", + "typeName": "GenerateSphere,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points of tetrahedra mesh", + "name": "output_TetrahedraPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points of triangle mesh", + "name": "output_TrianglesPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output triangular mesh", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "order of Bezier tetrahedra", + "name": "BezierTetrahedronDegree", + "type": "L" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "weights of rational Bezier tetrahedra", + "name": "BezierTetrahedronWeights", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "booleans indicating if each Bezier tetrahedron is rational or integral", + "name": "isBezierTetrahedronRational", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "order of Bezier triangles", + "name": "BezierTriangleDegree", + "type": "L" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "weights of rational Bezier triangles", + "name": "BezierTriangleWeights", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "booleans indicating if each Bezier triangle is rational or integral", + "name": "isBezierTriangleRational", + "type": "vector" + }, + { + "defaultValue": "0.2", + "group": "", + "help": "input sphere radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "sphere center point", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "Degree of tessellation of each Platonic triangulation", + "name": "tessellationDegree", + "type": "L" + }, + { + "defaultValue": "icosahedron", + "group": "Inputs", + "help": "name of the Platonic triangulation used to create the spherical dome : either \"tetrahedron\", \"octahedron\" or \"icosahedron\"", + "name": "platonicSolid", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine generating a spherical (Bezier) tetrahedral and triangular mesh.\n" + }, + { + "className": "GenericConstraintCorrection", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "GenericConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "BaseConstraintCorrection" + ], + "shortName": "genericConstraintCorrection", + "templateName": "", + "typeName": "GenericConstraintCorrection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the position factor and velocity factor used to calculate compliance matrix", + "name": "complianceFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + } + }, + "description": "Component computing constraint forces within a simulated body using the compliance method.\n" + }, + { + "className": "Gravity", + "creator": { + "": { + "class": { + "categories": [ + "ContextObject" + ], + "className": "Gravity", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ContextObject" + ], + "shortName": "gravity", + "templateName": "", + "typeName": "Gravity" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Gravity in the world coordinate system", + "name": "gravity", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Gravity in world coordinates.\n" + }, + { + "className": "GridMeshCreator", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "GridMeshCreator", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "gridMeshCreator", + "templateName": "", + "typeName": "GridMeshCreator" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "2 2", + "group": "", + "help": "Number of vertices in each direction", + "name": "resolution", + "type": "Vec2i" + }, + { + "defaultValue": "2", + "group": "", + "help": "0: no triangles, 1: alternate triangles, 2: upward triangles, 3: downward triangles", + "name": "trianglePattern", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Procedural creation of a two-dimensional mesh.\n" + }, + { + "className": "GridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "GridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "MeshTopology" + ], + "shortName": "gridTopology", + "templateName": "", + "typeName": "GridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution. (default = 2 2 2)", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Hexahedra is needed during init (default=true)", + "name": "computeHexaList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Quad is needed during init (default=true)", + "name": "computeQuadList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Triangles is needed during init (default=true)", + "name": "computeTriangleList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Lines is needed during init (default=true)", + "name": "computeEdgeList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Points is needed during init (default=true)", + "name": "computePointList", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, virtual texture coordinates will be generated using 3D interpolation (default=false).", + "name": "createTexCoords", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Base class fo a regular grid in 3D.\n" + }, + { + "className": "GroupFilterYoungModulus", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GroupFilterYoungModulus", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "groupFilterYoungModulus", + "templateName": "Vec3d", + "typeName": "GroupFilterYoungModulus,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Groups", + "name": "groups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Vector of primitives (indices)", + "name": "primitives", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of groups (each element gives its group", + "name": "elementsGroup", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vector of young modulus for each primitive", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mapping between groups and modulus", + "name": "mapGroupModulus", + "type": "string" + }, + { + "defaultValue": "10000", + "group": "", + "help": "Default value if the primitive is not in a group", + "name": "defaultYoungModulus", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "list of young modulus for each group", + "name": "groupModulus", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine defining a vector of young modulus according of a list of defined groups.\n" + }, + { + "className": "HausdorffDistance", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Rigid2d", + "typeName": "HausdorffDistance>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Rigid3d", + "typeName": "HausdorffDistance>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Vec1d", + "typeName": "HausdorffDistance,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Vec2d", + "typeName": "HausdorffDistance,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Vec3d", + "typeName": "HausdorffDistance,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Compute the Hausdorff distance of two point clouds.\n" + }, + { + "className": "HermiteSplineProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "HermiteSplineProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "hermiteSplineProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "HermiteSplineProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin Time of the motion", + "name": "BeginTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End Time of the motion", + "name": "EndTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "first control point", + "name": "X0", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "first control tangente", + "name": "dX0", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second control point", + "name": "X1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second control tangente", + "name": "dX1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "first interpolation vector", + "name": "SX0", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "second interpolation vector", + "name": "SX1", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "HermiteSplineProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "hermiteSplineProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "HermiteSplineProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin Time of the motion", + "name": "BeginTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End Time of the motion", + "name": "EndTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "first control point", + "name": "X0", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "first control tangente", + "name": "dX0", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second control point", + "name": "X1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second control tangente", + "name": "dX1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "first interpolation vector", + "name": "SX0", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "second interpolation vector", + "name": "SX1", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Apply a hermite cubic spline trajectory to given points.\n" + }, + { + "className": "Hexa2QuadTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Hexa2QuadTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "hexa2QuadTopologicalMapping", + "templateName": "", + "typeName": "Hexa2QuadTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normal ? (Inverse point order when creating triangle)", + "name": "flipNormals", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where HexahedronSetTopology is converted to QuadSetTopology\n" + }, + { + "className": "Hexa2TetraTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Hexa2TetraTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "hexa2TetraTopologicalMapping", + "templateName": "", + "typeName": "Hexa2TetraTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Boolean enabling to swapp hexa-edges\n in order to avoid bias effect", + "name": "swapping", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where HexahedronSetTopology is converted to TetrahedronSetTopology\n" + }, + { + "className": "HexahedralFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "HexahedralFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "hexahedralFEMFF", + "templateName": "Vec3d", + "typeName": "HexahedralFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal hexahedron data", + "name": "hexahedronInfo", + "type": "vector,Vec<3u,double>,double>>HexahedronInformation,CPUMemoryManager,Vec<3u,double>,double>>HexahedronInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Hexahedral finite elements.\n" + }, + { + "className": "HexahedralFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "HexahedralFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "Mass,Vec<3u,double>,double>>", + "HexahedralFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "hexahedralFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "HexahedralFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal hexahedron data", + "name": "hexahedronInfo", + "type": "vector,Vec<3u,double>,double>>HexahedronInformation,CPUMemoryManager,Vec<3u,double>,double>>HexahedronInformation>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Total mass per element", + "name": "totalMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass per particle", + "name": "particleMasses", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Lumped masses", + "name": "lumpedMasses", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Hexahedral finite elements with mass\n" + }, + { + "className": "HexahedronCompositeFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "HexahedronCompositeFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::nonuniform", + "parents": [ + "NonUniformHexahedronFEMForceFieldAndMass,Vec<3u,double>,double>>" + ], + "shortName": "hexahedronCompositeFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "HexahedronCompositeFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use virtual finer levels, in order to compte non-uniform stiffness", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Using this ForceField like a Mass? (rather than using a separated Mass)", + "name": "useMass", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does the homogenization is done directly from the finest level to the coarse one?", + "name": "finestToCoarse", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "0->static, 1->constrained static, 2->modal analysis", + "name": "homogenizationMethod", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Is the non-linear, complete interpolation used?", + "name": "completeInterpolation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If SparseGridRamification, are ramifications taken into account?", + "name": "useRamification", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "", + "name": "drawType", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "", + "name": "drawColor", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "Visualization", + "help": "", + "name": "drawSize", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.NonUniform" + } + }, + "description": "Non uniform Hexahedral finite elements.\n" + }, + { + "className": "HexahedronCompositeFEMMapping", + "creator": { + "Mapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>": { + "class": { + "categories": [ + "Mapping" + ], + "className": "HexahedronCompositeFEMMapping", + "namespaceName": "sofa::component::solidmechanics::fem::nonuniform", + "parents": [ + "Mapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + ], + "shortName": "hexahedronCompositeFEMMap", + "templateName": "Mapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>", + "typeName": "HexahedronCompositeFEMMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.NonUniform" + } + }, + "description": "Set the point to the center of mass of the DOFs it is attached to.\n" + }, + { + "className": "HexahedronFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "HexahedronFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>", + "BaseRotationFinder" + ], + "shortName": "hexahedronFEMFF", + "templateName": "Vec3d", + "typeName": "HexahedronFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Hexahedral finite elements.\n" + }, + { + "className": "HexahedronFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "HexahedronFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "Mass,Vec<3u,double>,double>>", + "HexahedronFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "hexahedronFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "HexahedronFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Hexahedral finite elements with mass.\n" + }, + { + "className": "HexahedronSetGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "HexahedronSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "QuadSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "hexahedronSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "HexahedronSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Hexa indices", + "name": "showHexaIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the Hexahedron in the topology", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the hexahedra (between 0 and 1; if <1.0, it produces gaps between the hexahedra)", + "name": "drawScaleHexahedra", + "type": "f" + }, + { + "defaultValue": "1 0.5 0 1", + "group": "Visualization", + "help": "RGB code color used to draw hexahedra.", + "name": "drawColorHexahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "HexahedronSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "QuadSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "hexahedronSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "HexahedronSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Hexa indices", + "name": "showHexaIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the Hexahedron in the topology", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the hexahedra (between 0 and 1; if <1.0, it produces gaps between the hexahedra)", + "name": "drawScaleHexahedra", + "type": "f" + }, + { + "defaultValue": "1 0.5 0 1", + "group": "Visualization", + "help": "RGB code color used to draw hexahedra.", + "name": "drawColorHexahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to an hexahedral topology.\n" + }, + { + "className": "HexahedronSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "HexahedronSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "QuadSetTopologyContainer" + ], + "shortName": "hexahedronSetTopologyContainer", + "templateName": "", + "typeName": "HexahedronSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force the creation of a set of quads associated with the hexahedra", + "name": "createQuadArray", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to an hexahedral topology.\n" + }, + { + "className": "HexahedronSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "HexahedronSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "QuadSetTopologyModifier" + ], + "shortName": "hexahedronSetTopologyModifier", + "templateName": "", + "typeName": "HexahedronSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Remove isolated DOFs", + "name": "removeIsolated", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to an hexahedral topology.\n" + }, + { + "className": "IdentityMapping", + "creator": { + "Rigid2d,Rigid2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<2u,double>>>" + ], + "shortName": "identityMap", + "templateName": "Rigid2d,Rigid2d", + "typeName": "IdentityMapping,StdRigidTypes<2u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<2u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Rigid2d,Vec2d", + "typeName": "IdentityMapping,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "identityMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "IdentityMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "IdentityMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec1d,Vec1d", + "typeName": "IdentityMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec2d,Vec2d", + "typeName": "IdentityMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec3d,Vec3d", + "typeName": "IdentityMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec6d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec6d,Vec3d", + "typeName": "IdentityMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec6d,Vec6d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<6u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec6d,Vec6d", + "typeName": "IdentityMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Special case of mapping where the child DOFs are the same as the parent ones\n" + }, + { + "className": "IdentityMultiMapping", + "creator": { + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "identityMultiMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "IdentityMultiMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "identityMultiMap", + "templateName": "Vec3d,Vec3d", + "typeName": "IdentityMultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Concatenate several mechanical states together.\n" + }, + { + "className": "IdentityTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "IdentityTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "identityTopologicalMapping", + "templateName": "", + "typeName": "IdentityTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "TopologicalMapping where the destination topology should be kept identical to the source topology. The implementation currently assumes that both topology have been initialized identically.\n" + }, + { + "className": "ImprovedJacobiConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "ImprovedJacobiConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "BuiltConstraintSolver" + ], + "shortName": "improvedJacobiConstraintSolver", + "templateName": "", + "typeName": "ImprovedJacobiConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of iterative algorithm", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute graphs of errors and forces during resolution", + "name": "computeGraphs", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's violation at each step of the resolution", + "name": "graphViolations", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraints", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraintGroups", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraint groups", + "name": "currentIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current error", + "name": "currentError", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Build compliances concurrently", + "name": "multithreading", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use SVD decomposiiton of the compliance matrix to project singular values smaller than regularization to the regularization term. Only works with built", + "name": "useSVDForRegularization", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Fraction of the highest singular value bellow which a singular value will be supposed to belong to the nullspace", + "name": "svdSingularValueNullSpaceCriteriaFactor", + "type": "d" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "Absolute value bellow which a component of a normalized base vector will be considered null", + "name": "svdSingularVectorNullSpaceCriteriaFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, the solution found after each iteration will be multiplied by spectralCorrectionFactor*2/spr(W), with spr() denoting the spectral radius.", + "name": "useSpectralCorrection", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor used to modulate the spectral correction", + "name": "spectralCorrectionFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, the solution found after each iteration will be corrected along the solution direction using `\\lambda^{i+1} -= beta^{i} * (\\lambda^{i} - \\lambda^{i-1})` with beta following the formula beta^{i} = min(1, (i/maxIterations)^{conjugateResidueSpeedFactor}) ", + "name": "useConjugateResidue", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "", + "help": "Factor used to modulate the speed in which beta used in the conjugate residue part reaches 1.0. The higher the value, the slower the reach. ", + "name": "conjugateResidueSpeedFactor", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve Constraint based components using a Projected Jacobi iterative method\n" + }, + { + "className": "IncrSAP", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "IncrSAP", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BroadPhaseDetection", + "NarrowPhaseDetection" + ], + "shortName": "incrSAP", + "templateName": "", + "typeName": "IncrSAP" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "if not empty, objects that do not intersect this bounding-box will be ignored", + "name": "box", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Collision detection using incremental sweep and prune.\n" + }, + { + "className": "IndexValueMapper", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndexValueMapper", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "indexValueMapper", + "templateName": "Vec3d", + "typeName": "IndexValueMapper,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Already existing values (can be empty)", + "name": "inputValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices to map value on", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Value to map indices on", + "name": "value", + "type": "d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "New map between indices and values", + "name": "outputValues", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default value for indices without any value", + "name": "defaultValue", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Input values to output values mapper. Includes indices rules, such as replacement, resize.\n" + }, + { + "className": "Indices2ValuesMapper", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "Indices2ValuesMapper", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "indices2ValuesMapper", + "templateName": "Vec3d", + "typeName": "Indices2ValuesMapper,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Already existing values (can be empty) ", + "name": "inputValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices to map value on ", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Values to map indices on ", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "New map between indices and values", + "name": "outputValues", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default value for indices without any value", + "name": "defaultValue", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Input multiple values to output values mapper. Includes indices rules, such as replacement, resize.\n" + }, + { + "className": "IndicesFromValues", + "creator": { + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "I", + "typeName": "IndicesFromValues" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "Vec2d", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "Vec3d", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "d": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "d", + "typeName": "IndicesFromValues" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "fixed_array", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "fixed_array", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "fixed_array", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "fixed_array", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "i", + "typeName": "IndicesFromValues" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "string": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "string", + "typeName": "IndicesFromValues,allocator>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine finding the indices of a list of values within a larger set of values.\n" + }, + { + "className": "InfoComponent", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "InfoComponent", + "namespaceName": "sofa::component::sceneutility::infocomponent", + "parents": [ + "BaseObject" + ], + "shortName": "infoComponent", + "templateName": "", + "typeName": "InfoComponent" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "This object retain the info/error message.\n" + }, + { + "className": "InputEventReader", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "InputEventReader", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "inputEventReader", + "templateName": "", + "typeName": "InputEventReader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "/dev/input/mouse2", + "group": "", + "help": "input events file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "inverse the sense of the movement", + "name": "inverseSense", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Print event information", + "name": "printEvent", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Key event generated when the left pedal is pressed", + "name": "key1", + "type": "b" + }, + { + "defaultValue": "1", + "group": "", + "help": "Key event generated when the right pedal is pressed", + "name": "key2", + "type": "b" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, write incoming events ; if false, read events from that file (if an output filename is provided)", + "name": "writeEvents", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Other filename where events will be stored (or read)", + "name": "outputFilename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Read events from file.\n" + }, + { + "className": "InteractionEllipsoidForceField", + "creator": { + "Vec3d,Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "InteractionEllipsoidForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "MixedInteractionForceField,Vec<3u,double>,double>,StdRigidTypes<3u,double>>" + ], + "shortName": "interactionEllipsoidFF", + "templateName": "Vec3d,Rigid3d", + "typeName": "InteractionEllipsoidForceField,Vec<3u,double>,double>,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Contacts", + "name": "contacts", + "type": "vector,Vec<3u,double>,double>,StdRigidTypes<3u,double>>Contact,CPUMemoryManager,Vec<3u,double>,double>,StdRigidTypes<3u,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid center", + "name": "center", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid radius", + "name": "vradius", + "type": "vector" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness (positive to repulse outward, negative inward)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "", + "help": "ellipsoid color. (default=[0.0,0.5,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "enable/disable drawing of the ellipsoid", + "name": "draw", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dof index of object 2 where the forcefield is attached", + "name": "object2_dof_index", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "enable/disable propagation of forces to object 2", + "name": "object2_forces", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "inverse transform from object 2 (use when object 1 is in local coordinates within a frame defined by object 2)", + "name": "object2_invert", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Outward / inward repulsion applied by an ellipsoid geometry, which can possibly act on several objects.\n" + }, + { + "className": "InteractiveCamera", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "InteractiveCamera", + "namespaceName": "sofa::component::visual", + "parents": [ + "BaseCamera" + ], + "shortName": "interactiveCamera", + "templateName": "", + "typeName": "InteractiveCamera" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's position", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's orientation", + "name": "orientation", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's look at", + "name": "lookAt", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Distance between camera and look at", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "45", + "group": "", + "help": "Camera's FOV", + "name": "fieldOfView", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Camera's zNear", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Camera's zFar", + "name": "zFar", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute Z clip planes (Near and Far) according to the bounding box", + "name": "computeZClip", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "minBBox", + "name": "minBBox", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "maxBBox", + "name": "maxBBox", + "type": "Vec3d" + }, + { + "defaultValue": "800", + "group": "", + "help": "widthViewport", + "name": "widthViewport", + "type": "I" + }, + { + "defaultValue": "600", + "group": "", + "help": "heightViewport", + "name": "heightViewport", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera Type (0 = Perspective, 1 = Orthographic)", + "name": "projectionType", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "", + "help": "Camera activated ?", + "name": "activated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the lookAt point always fixed", + "name": "fixedLookAt", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "250", + "group": "", + "help": "Zoom Speed", + "name": "zoomSpeed", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "Pan Speed", + "name": "panSpeed", + "type": "d" + }, + { + "defaultValue": "2", + "group": "", + "help": "Pivot (0 => Camera lookAt, 1 => Camera position, 2 => Scene center, 3 => World center", + "name": "pivot", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Camera with mouse and keyboard controls.\n" + }, + { + "className": "InvertTransformMatrixEngine", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "InvertTransformMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "AbstractTransformMatrixEngine" + ], + "shortName": "invertTransformMatrixEngine", + "templateName": "", + "typeName": "InvertTransformMatrixEngine" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "input transformation if any", + "name": "inT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output transformation", + "name": "outT", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Inverts the input transform.\n" + }, + { + "className": "JacobiPreconditioner", + "creator": { + "DiagonalMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "JacobiPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "jacobiPreconditioner", + "templateName": "DiagonalMatrix", + "typeName": "JacobiPreconditioner,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear solver based on a diagonal matrix (i.e. Jacobi preconditioner).\n" + }, + { + "className": "JoinPoints", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "JoinPoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "joinPoints", + "templateName": "Vec3d", + "typeName": "JoinPoints,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Points", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Distance to merge points", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Merged Points", + "name": "mergedPoints", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Merge points from a set of points within a given distance.\n" + }, + { + "className": "JointSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "JointSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField>" + ], + "shortName": "jointSpringFF", + "templateName": "Rigid3d", + "typeName": "JointSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "outfile", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "input file containing constant joint force", + "name": "infile", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "period between outputs", + "name": "period", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling reinitialization of the output file at each timestep", + "name": "reinit", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector>,CPUMemoryManager>>>" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the lawful part of the joint rotation", + "name": "showLawfulTorsion", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the illicit part of the joint rotation", + "name": "showExtraTorsion", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "modify the size of the debug information of a given factor", + "name": "showFactorSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs for Rigids.\n" + }, + { + "className": "LCPConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LCPConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "ConstraintSolverImpl" + ], + "shortName": "lCPConstraintSolver", + "templateName": "", + "typeName": "LCPConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display debug information.", + "name": "displayDebug", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate LCP results history to improve its resolution performances.", + "name": "initial_guess", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "LCP is not fully built to increase performance in some case.", + "name": "build_lcp", + "type": "bool" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of the Gauss-Seidel algorithm", + "name": "maxIt", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "0.6", + "group": "", + "help": "Friction coefficient", + "name": "mu", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not zero, constraints whose self-compliance (i.e. the corresponding value on the diagonal of W) is smaller than this threshold will be ignored", + "name": "minW", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not zero, constraints whose response force becomes larger than this threshold will be ignored", + "name": "maxF", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of ID of groups of constraints to be handled by this solver.", + "name": "group", + "type": "set" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Distance between each constraint cells", + "name": "showCellWidth", + "type": "d" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Position of the first cell", + "name": "showTranslation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve BaseConstraint based components.\n" + }, + { + "className": "LCPForceFeedback", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Controller" + ], + "className": "LCPForceFeedback", + "namespaceName": "sofa::component::haptics", + "parents": [ + "MechanicalStateForceFeedback>" + ], + "shortName": "lCPForceFeedback", + "templateName": "Rigid3d", + "typeName": "LCPForceFeedback>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + }, + { + "defaultValue": "0.03", + "group": "", + "help": "multiply haptic force by this coef.", + "name": "forceCoef", + "type": "d" + }, + { + "defaultValue": "0.0008", + "group": "", + "help": "max time to spend solving constraints.", + "name": "solverTimeout", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "max iteration to spend solving constraints", + "name": "solverMaxIt", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, deriv the rotations when updating the violations", + "name": "derivRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flag to enable/disable constraint haptic influence from all frames", + "name": "localHapticConstraintAllFrames", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + }, + "Vec1d": { + "class": { + "categories": [ + "Controller" + ], + "className": "LCPForceFeedback", + "namespaceName": "sofa::component::haptics", + "parents": [ + "MechanicalStateForceFeedback,Vec<1u,double>,double>>" + ], + "shortName": "lCPForceFeedback", + "templateName": "Vec1d", + "typeName": "LCPForceFeedback,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + }, + { + "defaultValue": "0.03", + "group": "", + "help": "multiply haptic force by this coef.", + "name": "forceCoef", + "type": "d" + }, + { + "defaultValue": "0.0008", + "group": "", + "help": "max time to spend solving constraints.", + "name": "solverTimeout", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "max iteration to spend solving constraints", + "name": "solverMaxIt", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, deriv the rotations when updating the violations", + "name": "derivRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flag to enable/disable constraint haptic influence from all frames", + "name": "localHapticConstraintAllFrames", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + } + }, + "description": "LCP force feedback for the device.\n" + }, + { + "className": "LightManager", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "LightManager", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManager" + ], + "shortName": "lightManager", + "templateName": "", + "typeName": "LightManager" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable Shadow in the scene. (default=0)", + "name": "shadows", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If Shadows enabled, Enable Variance Soft Shadow in the scene. (default=0)", + "name": "softShadows", + "type": "bool" + }, + { + "defaultValue": "0 0 0 1", + "group": "", + "help": "Ambient lights contribution (Vec4f)(default=[0.0f,0.0f,0.0f,0.0f])", + "name": "ambient", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable/disable drawing of lights shadow textures. (default=false)", + "name": "debugDraw", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Manage a set of lights that can cast hard and soft shadows.Soft Shadows is done using Variance Shadow Mapping (http://developer.download.nvidia.com/SDK/10.5/direct3d/Source/VarianceShadowMapping/Doc/VarianceShadowMapping.pdf)\n" + }, + { + "className": "LineAxis", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "LineAxis", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "lineAxis", + "templateName": "", + "typeName": "LineAxis" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "xyz", + "group": "", + "help": "Axis to draw.", + "name": "axis", + "type": "string" + }, + { + "defaultValue": "10", + "group": "", + "help": "Size of the lines.", + "name": "size", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, ignore the 'size' and draw infinite lines.", + "name": "infinite", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the lines.", + "name": "thickness", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "In case of infinite lines, should the lines gradually vanish.", + "name": "vanishing", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Display scene axis\n" + }, + { + "className": "LineCollisionModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "LineCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "lineCollisionModel", + "templateName": "Vec3d", + "typeName": "LineCollisionModel,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the line model (when surface normals are defined on these lines)", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display Collision Model Points free position(in green)", + "name": "displayFreePosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a linear mesh, as described in MeshTopology.\n" + }, + { + "className": "LineProjectiveConstraint", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LineProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "lineProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "LineProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "A point in the line", + "name": "origin", + "type": "Vec2d" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Direction of the line", + "name": "direction", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LineProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "lineProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "LineProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "A point in the line", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Direction of the line", + "name": "direction", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given particles to their initial positions.\n" + }, + { + "className": "LineSetSkinningMapping", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "LineSetSkinningMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "lineSetSkinningMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "LineSetSkinningMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "3", + "group": "", + "help": "Set the neighborhood line level", + "name": "neighborhoodLevel", + "type": "I" + }, + { + "defaultValue": "4", + "group": "", + "help": "Set the number of most influenced lines by each vertice", + "name": "numberInfluencedLines", + "type": "I" + }, + { + "defaultValue": "4", + "group": "", + "help": "Set the coefficient used to compute the weight of lines", + "name": "weightCoef", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Skin a model from a set of rigid lines.\n" + }, + { + "className": "LinearForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "linearFF", + "templateName": "Rigid3d", + "typeName": "LinearForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "linearFF", + "templateName": "Vec1d", + "typeName": "LinearForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "linearFF", + "templateName": "Vec2d", + "typeName": "LinearForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "linearFF", + "templateName": "Vec3d", + "typeName": "LinearForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "linearFF", + "templateName": "Vec6d", + "typeName": "LinearForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Linearly-interpolated force applied to given degrees of freedom.\n" + }, + { + "className": "LinearMovementProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "LinearMovementProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "LinearMovementProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "LinearMovementProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "LinearMovementProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "LinearMovementProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Impose a motion to given DOFs (translation and rotation).\n" + }, + { + "className": "LinearSolverConstraintCorrection", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LinearSolverConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection>" + ], + "shortName": "linearSolverConstraintCorrection", + "templateName": "Rigid3d", + "typeName": "LinearSolverConstraintCorrection>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "constraints are reordered along a wire-like topology (from tip to base)", + "name": "wire_optimization", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec1d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LinearSolverConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<1u,double>,double>>" + ], + "shortName": "linearSolverConstraintCorrection", + "templateName": "Vec1d", + "typeName": "LinearSolverConstraintCorrection,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "constraints are reordered along a wire-like topology (from tip to base)", + "name": "wire_optimization", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec2d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LinearSolverConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<2u,double>,double>>" + ], + "shortName": "linearSolverConstraintCorrection", + "templateName": "Vec2d", + "typeName": "LinearSolverConstraintCorrection,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "constraints are reordered along a wire-like topology (from tip to base)", + "name": "wire_optimization", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LinearSolverConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<3u,double>,double>>" + ], + "shortName": "linearSolverConstraintCorrection", + "templateName": "Vec3d", + "typeName": "LinearSolverConstraintCorrection,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "constraints are reordered along a wire-like topology (from tip to base)", + "name": "wire_optimization", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + } + }, + "description": "Component computing constraint forces within a simulated body using the compliance method.\n" + }, + { + "className": "LinearVelocityProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "LinearVelocityProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "LinearVelocityProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "LinearVelocityProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "LinearVelocityProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "LinearVelocityProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Impose a velocity to given DOFs (translation and rotation).\n" + }, + { + "className": "LocalMinDistance", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "LocalMinDistance", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "BaseProximityIntersection" + ], + "shortName": "localMinDistance", + "templateName": "", + "typeName": "LocalMinDistance" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Distance above which the intersection computations ignores the proximity pair. This distance can also be used in some broad phase algorithms to reduce the search area", + "name": "alarmDistance", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Distance below which a contact is created", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate LMD filter", + "name": "filterIntersection", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Filtering cone extension angle", + "name": "angleCone", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Factor for filtering cone angle computation", + "name": "coneFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use external cone computation", + "name": "useLMDFilters", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "A set of methods to compute (for constraint methods) if two primitives are close enough to consider they collide\n" + }, + { + "className": "MapIndices", + "creator": { + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "I", + "typeName": "MapIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "fixed_array", + "typeName": "MapIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "fixed_array", + "typeName": "MapIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "fixed_array", + "typeName": "MapIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "fixed_array", + "typeName": "MapIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "i", + "typeName": "MapIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Apply a permutation to a set of indices.\n" + }, + { + "className": "MappedObject", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State>" + ], + "shortName": "mappedObject", + "templateName": "Rigid2d", + "typeName": "MappedObject>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Rigid3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State>" + ], + "shortName": "mappedObject", + "templateName": "Rigid3d", + "typeName": "MappedObject>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec1d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State,Vec<1u,double>,double>>" + ], + "shortName": "mappedObject", + "templateName": "Vec1d", + "typeName": "MappedObject,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec2d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State,Vec<2u,double>,double>>" + ], + "shortName": "mappedObject", + "templateName": "Vec2d", + "typeName": "MappedObject,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State,Vec<3u,double>,double>>" + ], + "shortName": "mappedObject", + "templateName": "Vec3d", + "typeName": "MappedObject,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec6d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State,Vec<6u,double>,double>>" + ], + "shortName": "mappedObject", + "templateName": "Vec6d", + "typeName": "MappedObject,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + } + }, + "description": "Mapped state vectors\n" + }, + { + "className": "MathOp", + "creator": { + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Apply a math operation to combine several inputs.\n" + }, + { + "className": "MatrixFreeSystem", + "creator": { + "GraphScattered": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixFreeSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem" + ], + "shortName": "matrixFreeSystem", + "templateName": "GraphScattered", + "typeName": "MatrixFreeSystem" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "Matrix-free (unbuilt) linear system.\n" + }, + { + "className": "MatrixLinearSystem", + "creator": { + "BTDMatrix6d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,BlockVector<6ul,double>>" + ], + "shortName": "matrixLinearSystem", + "templateName": "BTDMatrix6d", + "typeName": "MatrixLinearSystem,BlockVector<6ul,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "BlockDiagonalMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "BlockDiagonalMatrixMat3x3d", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat2x2d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat2x2d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat4x4d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat4x4d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat6x6d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat6x6d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat8x8d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat8x8d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "DiagonalMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "DiagonalMatrix", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "FullMatrix", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "RotationMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "RotationMatrixd", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "SparseMatrix", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Linear system dedicated to a Band Tri Diagonal matrix.\nLinear system.\n" + }, + { + "className": "MatrixProjectionMethod", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MatrixProjectionMethod", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "BaseMatrixProjectionMethod>" + ], + "shortName": "matrixProjectionMethod", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "MatrixProjectionMethod>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if mapping jacobians are considered constant over time. They are computed only the first time.", + "name": "areJacobiansConstant", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Matrix mapping computing the matrix projection using the Eigen library.\n" + }, + { + "className": "MeanComputation", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Rigid2d", + "typeName": "MeanComputation>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Rigid3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Rigid3d", + "typeName": "MeanComputation>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Vec1d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Vec1d", + "typeName": "MeanComputation,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Vec2d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Vec2d", + "typeName": "MeanComputation,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Vec3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Vec3d", + "typeName": "MeanComputation,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Compute the mean of the input elements.\n" + }, + { + "className": "MechanicalObject", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState>" + ], + "shortName": "mObject", + "templateName": "Rigid2d", + "typeName": "MechanicalObject>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Rigid3d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState>" + ], + "shortName": "mObject", + "templateName": "Rigid3d", + "typeName": "MechanicalObject>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec1d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState,Vec<1u,double>,double>>" + ], + "shortName": "mObject", + "templateName": "Vec1d", + "typeName": "MechanicalObject,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec2d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState,Vec<2u,double>,double>>" + ], + "shortName": "mObject", + "templateName": "Vec2d", + "typeName": "MechanicalObject,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec3d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState,Vec<3u,double>,double>>" + ], + "shortName": "mObject", + "templateName": "Vec3d", + "typeName": "MechanicalObject,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec6d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState,Vec<6u,double>,double>>" + ], + "shortName": "mObject", + "templateName": "Vec6d", + "typeName": "MechanicalObject,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + } + }, + "description": "mechanical state vectors\n" + }, + { + "className": "MechanicalStateController", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Controller" + ], + "className": "MechanicalStateController", + "namespaceName": "sofa::component::controller", + "parents": [ + "Controller" + ], + "shortName": "mechanicalStateController", + "templateName": "Rigid3d", + "typeName": "MechanicalStateController>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Event handling frequency controls the controller update frequency", + "name": "handleEventTriggersUpdate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Index of the controlled DOF", + "name": "index", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Controlling the DOF only in translation", + "name": "onlyTranslation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "state of ths device button", + "name": "buttonDeviceState", + "type": "bool" + }, + { + "defaultValue": "0 0 -1", + "group": "", + "help": "Main direction and orientation of the controlled DOF", + "name": "mainDirection", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Controller" + }, + "Vec1d": { + "class": { + "categories": [ + "Controller" + ], + "className": "MechanicalStateController", + "namespaceName": "sofa::component::controller", + "parents": [ + "Controller" + ], + "shortName": "mechanicalStateController", + "templateName": "Vec1d", + "typeName": "MechanicalStateController,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Event handling frequency controls the controller update frequency", + "name": "handleEventTriggersUpdate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Index of the controlled DOF", + "name": "index", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Controlling the DOF only in translation", + "name": "onlyTranslation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "state of ths device button", + "name": "buttonDeviceState", + "type": "bool" + }, + { + "defaultValue": "0 0 -1", + "group": "", + "help": "Main direction and orientation of the controlled DOF", + "name": "mainDirection", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Controller" + } + }, + "description": "Provides a Mouse & Keyboard user control on a Mechanical State.\n" + }, + { + "className": "MergeMeshes", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Rigid2d", + "typeName": "MergeMeshes>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Rigid3d", + "typeName": "MergeMeshes>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Vec1d", + "typeName": "MergeMeshes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Vec2d", + "typeName": "MergeMeshes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Vec3d", + "typeName": "MergeMeshes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Merge several meshes.\n" + }, + { + "className": "MergePoints", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Rigid2d", + "typeName": "MergePoints>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Rigid3d", + "typeName": "MergePoints>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Vec1d", + "typeName": "MergePoints,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Vec2d", + "typeName": "MergePoints,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Vec3d", + "typeName": "MergePoints,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Merge 2 coordinate vectors.\n" + }, + { + "className": "MergeROIs", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeROIs", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "mergeROIs", + "templateName": "", + "typeName": "MergeROIs" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "size of indices/value vector", + "name": "nbROIs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of ROIs", + "name": "roiIndices", + "type": "vector,CPUMemoryManager>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Merge a list of ROIs (vector) into a single Data (vector>).\n" + }, + { + "className": "MergeSets", + "creator": { + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeSets", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeSets", + "templateName": "I", + "typeName": "MergeSets" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "first set of indices", + "name": "in1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "second set of indices", + "name": "in2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "merged set of indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "union", + "group": "Inputs", + "help": "name of operation to compute (union, intersection, difference, symmetric_difference)", + "name": "op", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeSets", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeSets", + "templateName": "i", + "typeName": "MergeSets" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "first set of indices", + "name": "in1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "second set of indices", + "name": "in2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "merged set of indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "union", + "group": "Inputs", + "help": "name of operation to compute (union, intersection, difference, symmetric_difference)", + "name": "op", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Merge two sets of indices using specified boolean operation.\n" + }, + { + "className": "MergeVectors", + "creator": { + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Apply a merge operation to combine several inputs.\n" + }, + { + "className": "MergeVisualModels", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "MergeVisualModels", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "OglModel" + ], + "shortName": "mergeVisualModels", + "templateName": "Vec3d", + "typeName": "MergeVisualModels" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if rest positions must be initialized with initial positions", + "name": "initRestPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normal smoothing groups should be read from file", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normals should be updated at each iteration", + "name": "updateNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tangents should be computed at startup", + "name": "computeTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if tangents should be updated at each iteration", + "name": "updateTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if topological changes should be handled", + "name": "handleDynamicTopology", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if UV seams should be handled even when duplicate UVs are merged", + "name": "fixMergedUVSeams", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep and draw lines (false by default)", + "name": "keepLines", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "vertices of the model (only if vertices have multiple normals/texcoords, otherwise positions are used)", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "coordinates of the texture", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "tangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "bitangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "edges of the model", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "triangles of the model", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "quads of the model", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": " Path to an ogl model", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the Texture", + "name": "texturename", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Translation of the object", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Rotation of the object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Initial Scale of the object", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "1 1", + "group": "", + "help": "Scale of the texture", + "name": "scaleTex", + "type": "Vec2f" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Translation of the texture", + "name": "translationTex", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Material", + "name": "material", + "type": "Material" + }, + { + "defaultValue": "0", + "group": "", + "help": "Give Texture Coordinates without the texture binding", + "name": "putOnlyTexCoords", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "When sRGB rendering is enabled, is the texture in sRGB colorspace?", + "name": "srgbTexturing", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Groups of triangles and quads using a given material", + "name": "groups", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blend transparent parts", + "name": "blendTranslucency", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "is alpha premultiplied ?", + "name": "premultipliedAlpha", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Write into Z Buffer for Transparent Object", + "name": "writeZTransparent", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable alpha blending", + "name": "alphaBlend", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable depth testing", + "name": "depthTest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Face culling (0 = no culling, 1 = cull back faces, 2 = cull front faces)", + "name": "cullFace", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Line width (set if != 1, only for lines rendering)", + "name": "lineWidth", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "Point size (set if != 1, only for points rendering)", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth line rendering", + "name": "lineSmooth", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth point rendering", + "name": "pointSmooth", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Select types of primitives to send (necessary for some shader types such as geometry or tessellation)", + "name": "primitiveType", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how source and destination colors are combined", + "name": "blendEquation", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha source blending factors are computed", + "name": "sfactor", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha destination blending factors are computed", + "name": "dfactor", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "", + "help": "number of input visual models to merge", + "name": "nb", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "VisualModelImpl", + "help": "input visual model(1)", + "name": "input1" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Merge several visual models.\n" + }, + { + "className": "Mesh2PointMechanicalMapping", + "creator": { + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "Mesh2PointMechanicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "mesh2PointMechanicalMap", + "templateName": "Vec3d,Vec3d", + "typeName": "Mesh2PointMechanicalMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "Mesh2PointTopologicalMapping", + "help": "Link to a Mesh2PointTopologicalMapping", + "name": "topologicalMapping" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the input topology", + "name": "inputTopology" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the output topology", + "name": "outputTopology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Mechanical mapping between a set of mesh primitives (point, edge, triangle...) and a set of points generated by Mesh2PointTopologicalMapping.\n" + }, + { + "className": "Mesh2PointTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Mesh2PointTopologicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "TopologicalMapping" + ], + "shortName": "mesh2PointTopologicalMapping", + "templateName": "", + "typeName": "Mesh2PointTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the points of the input topology", + "name": "pointBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the edges of the input topology", + "name": "edgeBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the triangles of the input topology", + "name": "triangleBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the quads of the input topology", + "name": "quadBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the tetra of the input topology", + "name": "tetraBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the hexa of the input topology", + "name": "hexaBaryCoords", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Activate mapping of input edges into the output topology (requires at least one item in pointBaryCoords)", + "name": "copyEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Activate mapping of input triangles into the output topology (requires at least one item in pointBaryCoords)", + "name": "copyTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Activate mapping of input tetrahedra into the output topology (requires at least one item in pointBaryCoords)", + "name": "copyTetrahedra", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "This class maps any mesh primitive (point, edge, triangle...) into a point using a relative position from the primitive.\n" + }, + { + "className": "MeshBarycentricMapperEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshBarycentricMapperEngine", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "meshBarycentricMapperEngine", + "templateName": "Vec3d", + "typeName": "MeshBarycentricMapperEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Initial positions of the master points", + "name": "inputPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Initial positions of the points to be mapped", + "name": "mappedPointPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output : Barycentric positions of the mapped points", + "name": "barycentricPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output : Table that provides the index of the element to which each input point belongs", + "name": "tableElements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, computes a linear interpolation (debug)", + "name": "computeLinearInterpolation", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of a linear interpolation", + "name": "linearInterpolationIndices", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Values of a linear interpolation", + "name": "linearInterpolationValues", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Name of the master topology", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine mapping a set of points in a topological model and provide barycentric coordinates\n" + }, + { + "className": "MeshBoundaryROI", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshBoundaryROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "meshBoundaryROI", + "templateName": "", + "typeName": "MeshBoundaryROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "optional subset of the input mesh", + "name": "inputROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Index lists of the closing vertices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Outputs indices of boundary vertices of a triangle/quad mesh\n" + }, + { + "className": "MeshClosingEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshClosingEngine", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "meshClosingEngine", + "templateName": "Vec3d", + "typeName": "MeshClosingEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vertices", + "name": "inputPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles", + "name": "inputTriangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads", + "name": "inputQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vertices of closed mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles of closed mesh", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quads of closed mesh (=input quads with current method)", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Index lists of the closing parts", + "name": "indices", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vertices of the closing parts", + "name": "closingPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles of the closing parts", + "name": "closingTriangles", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Close a given mesh.\n" + }, + { + "className": "MeshExporter", + "creator": { + "": { + "class": { + "categories": [ + "Exporter" + ], + "className": "MeshExporter", + "namespaceName": "sofa::component::_meshexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "meshExporter", + "templateName": "", + "typeName": "MeshExporter" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "ALL", + "group": "", + "help": "File format to use", + "name": "format", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "points position (will use points from topology or mechanical state if this is empty)", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "write edge topology", + "name": "edges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "write triangle topology", + "name": "triangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "write quad topology", + "name": "quads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "write tetra topology", + "name": "tetras", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "write hexa topology", + "name": "hexas", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Export topology and positions into file. \nSupported format are: \n- vtkxml \n- vtk \n- netgen \n- teten \n- gmsh \n- obj \n\n" + }, + { + "className": "MeshGmshLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshGmshLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshGmshLoader", + "templateName": "", + "typeName": "MeshGmshLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for Gmsh file format.\n" + }, + { + "className": "MeshMatrixMass", + "creator": { + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec1d,Vec1d", + "typeName": "MeshMatrixMass,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec1d,Vec2d", + "typeName": "MeshMatrixMass,Vec<1u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec1d,Vec3d", + "typeName": "MeshMatrixMass,Vec<1u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec2d,Vec2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<2u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec2d,Vec2d", + "typeName": "MeshMatrixMass,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec2d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<2u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec2d,Vec3d", + "typeName": "MeshMatrixMass,Vec<2u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<3u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec3d,Vec3d", + "typeName": "MeshMatrixMass,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + } + }, + "description": "Compute a mass matrix resulting from the space integration of a density over a domain.\n" + }, + { + "className": "MeshOBJLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshOBJLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshOBJLoader", + "templateName": "", + "typeName": "MeshOBJLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Preserve UV and normal seams information (vertices with multiple UV and/or normals)", + "name": "handleSeams", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Load the related MTL file or use a default one?", + "name": "loadMaterial", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Shading", + "help": "Default material", + "name": "defaultMaterial", + "type": "Material" + }, + { + "defaultValue": "", + "group": "Shading", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "List of face definitions.", + "name": "faceList", + "type": "SVector>" + }, + { + "defaultValue": "", + "group": "Texturing", + "help": "Indices of textures coordinates used in faces definition.", + "name": "texcoordsIndex", + "type": "SVector>" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "Vertex positions definition", + "name": "positionsDefinition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Texturing", + "help": "Texture coordinates definition", + "name": "texcoordsDefinition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "List of normals of elements of the mesh loaded.", + "name": "normalsIndex", + "type": "SVector>" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "Normals definition", + "name": "normalsDefinition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Texturing", + "help": "Texture coordinates of all faces, to be used as the parent data of a VisualModel texcoords data", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to activate export of Data instances containing list of face indices for each material", + "name": "computeMaterialFaces", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for OBJ file format.\n" + }, + { + "className": "MeshOffLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshOffLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshOffLoader", + "templateName": "", + "typeName": "MeshOffLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for Off file format.\n" + }, + { + "className": "MeshROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI>" + ], + "shortName": "meshROI", + "templateName": "Rigid3d", + "typeName": "MeshROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI position coordinates of the degrees of freedom", + "name": "ROIposition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Edge Topology", + "name": "ROIedges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Triangle Topology", + "name": "ROItriangles", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute with the mesh (not only bounding box)", + "name": "computeMeshROI", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Bounding box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the data not contained in the ROI", + "name": "drawOut", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the Bounding box around the mesh used for the ROI", + "name": "drawBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI,Vec<3u,double>,double>>" + ], + "shortName": "meshROI", + "templateName": "Vec3d", + "typeName": "MeshROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI position coordinates of the degrees of freedom", + "name": "ROIposition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Edge Topology", + "name": "ROIedges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Triangle Topology", + "name": "ROItriangles", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute with the mesh (not only bounding box)", + "name": "computeMeshROI", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Bounding box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the data not contained in the ROI", + "name": "drawOut", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the Bounding box around the mesh used for the ROI", + "name": "drawBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI,Vec<6u,double>,double>>" + ], + "shortName": "meshROI", + "templateName": "Vec6d", + "typeName": "MeshROI,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI position coordinates of the degrees of freedom", + "name": "ROIposition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Edge Topology", + "name": "ROIedges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Triangle Topology", + "name": "ROItriangles", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute with the mesh (not only bounding box)", + "name": "computeMeshROI", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Bounding box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the data not contained in the ROI", + "name": "drawOut", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the Bounding box around the mesh used for the ROI", + "name": "drawBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the primitives (vertex/edge/triangle/tetrahedron) inside a given mesh.\n" + }, + { + "className": "MeshSTLLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshSTLLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshSTLLoader", + "templateName": "", + "typeName": "MeshSTLLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "80", + "group": "", + "help": "Size of the header binary file (just before the number of facet).", + "name": "headerSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force reading in binary mode. Even in first keyword of the file is solid.", + "name": "forceBinary", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Since positions are duplicated in a STL, they have to be merged. Using a map to do so will temporarily duplicate memory but should be more efficient. Disable it if memory is really an issue.", + "name": "mergePositionUsingMap", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Loader for the STL file format. STL can be used to represent the surface of object using with a triangulation.\n" + }, + { + "className": "MeshSampler", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshSampler", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "meshSampler", + "templateName": "Vec3d", + "typeName": "MeshSampler,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "Sample number", + "name": "number", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input edges for geodesic sampling (Euclidean distances are used if not specified).", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "Inputs", + "help": "Max number of Lloyd iterations.", + "name": "maxIter", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed sample indices.", + "name": "outputIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed sample coordinates.", + "name": "outputPosition", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Select uniformly distributed points on a mesh based on Euclidean or Geodesic distance measure.\n" + }, + { + "className": "MeshSplittingEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshSplittingEngine", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "meshSplittingEngine", + "templateName": "Vec3d", + "typeName": "MeshSplittingEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "input vertices", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input edges", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input hexahedra", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "couples for input vertices: ROI index + index in the ROI", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output vertices(1)", + "name": "position1", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine breaking a mesh in multiple parts, based on selected vertices or cells.\n" + }, + { + "className": "MeshSpringForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "MeshSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "meshSpringFF", + "templateName": "Vec1d", + "typeName": "MeshSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "MeshSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "meshSpringFF", + "templateName": "Vec2d", + "typeName": "MeshSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "MeshSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "meshSpringFF", + "templateName": "Vec3d", + "typeName": "MeshSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Spring force field acting along the edges of a mesh.\n" + }, + { + "className": "MeshSubsetEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshSubsetEngine", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "meshSubsetEngine", + "templateName": "Vec3d", + "typeName": "MeshSubsetEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vertices", + "name": "inputPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges", + "name": "inputEdges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles", + "name": "inputTriangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads", + "name": "inputQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra", + "name": "inputTetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra", + "name": "inputHexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Index lists of the selected vertices", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vertices of mesh subset", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "edges of mesh subset", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles of mesh subset", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quads of mesh subset", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra of mesh subset", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra of mesh subset", + "name": "hexahedra", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Extract a mesh subset based on selected vertices.\n" + }, + { + "className": "MeshTetraStuffing", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeshTetraStuffing", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "BaseObject" + ], + "shortName": "meshTetraStuffing", + "templateName": "", + "typeName": "MeshTetraStuffing" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "BBox to restrict the volume to", + "name": "vbbox", + "type": "fixed_array" + }, + { + "defaultValue": "-8", + "group": "", + "help": "Size of the generate tetrahedra. If negative, number of grid cells in the largest bbox dimension", + "name": "size", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input surface mesh points", + "name": "inputPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input surface mesh triangles", + "name": "inputTriangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input surface mesh quads", + "name": "inputQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output volume mesh points", + "name": "outputPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output volume mesh tetrahedra", + "name": "outputTetrahedra", + "type": "vector" + }, + { + "defaultValue": "0.24999", + "group": "Inputs", + "help": "Minimum alpha values on long edges when snapping points", + "name": "alphaLong", + "type": "d" + }, + { + "defaultValue": "0.42978", + "group": "Inputs", + "help": "Minimum alpha values on short edges when snapping points", + "name": "alphaShort", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Snap points to the surface if intersections on edges are closed to given alpha values", + "name": "snapPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Split tetrahedra crossing the surface", + "name": "splitTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Activate rendering of internal datasets", + "name": "draw", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Create a tetrahedral volume mesh from a surface, using the algorithm from F. Labelle and J.R. Shewchuk, \"Isosurface Stuffing: Fast Tetrahedral Meshes with Good Dihedral Angles\", SIGGRAPH 2007.\n" + }, + { + "className": "MeshTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "MeshTopology", + "namespaceName": "sofa::component::topology::container::constant", + "parents": [ + "BaseMeshTopology" + ], + "shortName": "meshTopology", + "templateName": "", + "typeName": "MeshTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Constant" + } + }, + "description": "Generic constant topology loaded from a mesh file.\n" + }, + { + "className": "MeshTrianLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshTrianLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshTrianLoader", + "templateName": "", + "typeName": "MeshTrianLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set to true if the mesh is a trian2 format.", + "name": "trian2", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Table of neighborhood triangle indices for each triangle.", + "name": "neighborTable", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edges which are on the border of the mesh loaded.", + "name": "edgesOnBorder", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices which are on the border of the mesh loaded.", + "name": "trianglesOnBorderList", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for trian (only triangulations) file format.\n" + }, + { + "className": "MeshVTKLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshVTKLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshVTKLoader", + "templateName": "", + "typeName": "MeshVTKLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Mesh loader for the VTK/VTU file format.\n" + }, + { + "className": "MeshXspLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshXspLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshXspLoader", + "templateName": "", + "typeName": "MeshXspLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for Xsp file format.\n" + }, + { + "className": "MessageHandlerComponent", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MessageHandlerComponent", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "BaseObject" + ], + "shortName": "messageHandlerComponent", + "templateName": "", + "typeName": "MessageHandlerComponent" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Type of the message handler to use among [sofa, clang //, log , silent]. ", + "name": "handler", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "This object controls the way Sofa print's info/warning/error/fatal messages. \n" + }, + { + "className": "MinProximityIntersection", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "MinProximityIntersection", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "BaseProximityIntersection" + ], + "shortName": "minProximityIntersection", + "templateName": "", + "typeName": "MinProximityIntersection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Distance above which the intersection computations ignores the proximity pair. This distance can also be used in some broad phase algorithms to reduce the search area", + "name": "alarmDistance", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Distance below which a contact is created", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate Sphere-Triangle intersection tests", + "name": "useSphereTriangle", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate Point-Point intersection tests", + "name": "usePointPoint", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute the norms of the Detection Outputs by considering the normals of the surfaces involved.", + "name": "useSurfaceNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate Line-Point intersection tests", + "name": "useLinePoint", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate Line-Line intersection tests", + "name": "useLineLine", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "A set of methods to compute if two primitives are close enough to consider they collide.\n" + }, + { + "className": "MinResLinearSolver", + "creator": { + "CompressedRowSparseMatrixMat2x2d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat2x2d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat4x4d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat4x4d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat6x6d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat6x6d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat8x8d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat8x8d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "MinResLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "FullMatrix", + "typeName": "MinResLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "GraphScattered": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver" + ], + "shortName": "minResLinearSolver", + "templateName": "GraphScattered", + "typeName": "MinResLinearSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "SparseMatrix", + "typeName": "MinResLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "Linear system solver using the MINRES iterative algorithm.\n" + }, + { + "className": "MouseInteractor", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "BehaviorModel" + ], + "className": "MouseInteractor", + "namespaceName": "sofa::gui::component::performer", + "parents": [ + "BaseMouseInteractor" + ], + "shortName": "mouseInteractor", + "templateName": "Rigid3d", + "typeName": "MouseInteractor>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + }, + "Vec2d": { + "class": { + "categories": [ + "BehaviorModel" + ], + "className": "MouseInteractor", + "namespaceName": "sofa::gui::component::performer", + "parents": [ + "BaseMouseInteractor" + ], + "shortName": "mouseInteractor", + "templateName": "Vec2d", + "typeName": "MouseInteractor,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + }, + "Vec3d": { + "class": { + "categories": [ + "BehaviorModel" + ], + "className": "MouseInteractor", + "namespaceName": "sofa::gui::component::performer", + "parents": [ + "BaseMouseInteractor" + ], + "shortName": "mouseInteractor", + "templateName": "Vec3d", + "typeName": "MouseInteractor,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Perform tasks related to the interaction with the mouse.\nPerform tasks related to the interaction with the mouse and rigid objects\n" + }, + { + "className": "MultiStepAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "MultiStepAnimationLoop", + "namespaceName": "sofa::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "multiStepAnimationLoop", + "templateName": "", + "typeName": "MultiStepAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "number of collision steps between each frame rendering", + "name": "collisionSteps", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "number of integration steps between each collision detection", + "name": "integrationSteps", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Component.AnimationLoop" + } + }, + "description": "Multi steps animation loop, multi integration steps in a single animation step are managed.\n" + }, + { + "className": "MultiTagAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "MultiTagAnimationLoop", + "namespaceName": "sofa::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "multiTagAnimationLoop", + "templateName": "", + "typeName": "MultiTagAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Component.AnimationLoop" + } + }, + "description": "Simple animation loop that given a list of tags, animate the graph one tag after another.\n" + }, + { + "className": "MultilevelHexahedronSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "MultilevelHexahedronSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetTopologyContainer" + ], + "shortName": "multilevelHexahedronSetTopologyContainer", + "templateName": "", + "typeName": "MultilevelHexahedronSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force the creation of a set of quads associated with the hexahedra", + "name": "createQuadArray", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of resolution levels between the fine and coarse mesh", + "name": "level", + "type": "i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "fine resolution", + "name": "resolution", + "type": "Vec3i" + }, + { + "defaultValue": "", + "group": "", + "help": "indices of the hexa in the grid.", + "name": "idxInRegularGrid", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "map between hexahedra and components - coarse", + "name": "coarseComponents", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "map between hexahedra and components - fine", + "name": "fineComponents", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Multilevel Hexahedron set topology container.\n" + }, + { + "className": "NNCGConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "NNCGConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "BlockGaussSeidelConstraintSolver" + ], + "shortName": "nNCGConstraintSolver", + "templateName": "", + "typeName": "NNCGConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of iterative algorithm", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute graphs of errors and forces during resolution", + "name": "computeGraphs", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's violation at each step of the resolution", + "name": "graphViolations", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraints", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraintGroups", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraint groups", + "name": "currentIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current error", + "name": "currentError", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Build compliances concurrently", + "name": "multithreading", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use SVD decomposiiton of the compliance matrix to project singular values smaller than regularization to the regularization term. Only works with built", + "name": "useSVDForRegularization", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Fraction of the highest singular value bellow which a singular value will be supposed to belong to the nullspace", + "name": "svdSingularValueNullSpaceCriteriaFactor", + "type": "d" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "Absolute value bellow which a component of a normalized base vector will be considered null", + "name": "svdSingularVectorNullSpaceCriteriaFactor", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve Constraint based components using the Non-smooth Non-linear Conjugate Gradient method\n" + }, + { + "className": "NaturalOrderingMethod", + "creator": { + "": { + "class": { + "categories": [ + "OrderingMethod" + ], + "className": "NaturalOrderingMethod", + "namespaceName": "sofa::component::linearsolver::ordering", + "parents": [ + "BaseOrderingMethod" + ], + "shortName": "naturalOrderingMethod", + "templateName": "", + "typeName": "NaturalOrderingMethod" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Ordering" + } + }, + "description": "Natural order (no permutation). Corresponding to an identity matrix.\n" + }, + { + "className": "NearestPointROI", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,StdRigidTypes<2u,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Rigid2d", + "typeName": "NearestPointROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,StdRigidTypes<3u,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Rigid3d", + "typeName": "NearestPointROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Vec1d", + "typeName": "NearestPointROI,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Vec2d", + "typeName": "NearestPointROI,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Vec3d", + "typeName": "NearestPointROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,Vec<6u,double>,double>,StdVectorTypes,Vec<6u,double>,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Vec6d", + "typeName": "NearestPointROI,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Attach given pair of particles, projecting the positions of the second particles to the first ones.\n" + }, + { + "className": "NewProximityIntersection", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "NewProximityIntersection", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "BaseProximityIntersection" + ], + "shortName": "newProximityIntersection", + "templateName": "", + "typeName": "NewProximityIntersection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Distance above which the intersection computations ignores the proximity pair. This distance can also be used in some broad phase algorithms to reduce the search area", + "name": "alarmDistance", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Distance below which a contact is created", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Line-line collision detection enabled", + "name": "useLineLine", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "Optimized Proximity Intersection based on Triangle-Triangle tests, ignoring Edge-Edge cases\n" + }, + { + "className": "NewmarkImplicitSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "NewmarkImplicitSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "OdeSolver", + "LinearSolverAccessor" + ], + "shortName": "newmarkImplicitSolver", + "templateName": "", + "typeName": "NewmarkImplicitSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to stiffness", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Velocity decay coefficient (no decay if null)", + "name": "vdamping", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Newmark scheme gamma coefficient", + "name": "gamma", + "type": "d" + }, + { + "defaultValue": "0.25", + "group": "", + "help": "Newmark scheme beta coefficient", + "name": "beta", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Implicit time integrator using Newmark scheme.\n" + }, + { + "className": "NewtonRaphsonSolver", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "NewtonRaphsonSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "BaseObject" + ], + "shortName": "newtonRaphsonSolver", + "templateName": "", + "typeName": "NewtonRaphsonSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Stopping criteria", + "help": "Maximum number of iterations of the Newton's method if it has not converged.", + "name": "maxNbIterationsNewton", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "Stopping criteria", + "help": "Threshold for the relative successive progress criterion. The Newton iterations will stop when the ratio between the norm of the residual at iteration k over the norm of the residual at iteration k-1 is lower than this threshold.", + "name": "relativeSuccessiveStoppingThreshold", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "Stopping criteria", + "help": "Threshold for the relative initial progress criterion. The Newton iterations will stop when the ratio between the norm of the residual at iteration k over the norm of the residual at iteration 0 is lower than this threshold. This criterion tracks the overall progress made since the beginning of the iteration process. If the ratio is significantly smaller than 1, it indicates that the iterative process is making substantial progress, and the method is converging toward the root.", + "name": "relativeInitialStoppingThreshold", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "Stopping criteria", + "help": "Threshold for the absolute function value stopping criterion. The Newton iterations will stop when the norm of the residual at iteration k is lower than this threshold. This criterion indicates the current iteration found an estimate close to the root.", + "name": "absoluteResidualStoppingThreshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Stopping criteria", + "help": "Threshold for the relative change in root estimate criterion. The Newton iterations will stop when the difference between two successive estimates divided by the previous estimate is smaller than this threshold", + "name": "relativeEstimateDifferenceThreshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Stopping criteria", + "help": "Threshold for the absolute change in root estimate criterion. The Newton iterations will stop when the difference between two successive estimates is smaller than this threshold.", + "name": "absoluteEstimateDifferenceThreshold", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Line Search", + "help": "Maximum number of iterations of the line search method if it has not converged.", + "name": "maxNbIterationsLineSearch", + "type": "I" + }, + { + "defaultValue": "0.5", + "group": "Line Search", + "help": "Line search coefficient", + "name": "lineSearchCoefficient", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Update the states within the last iteration even if the iterative process is considered diverged.", + "name": "updateStateWhenDiverged", + "type": "bool" + }, + { + "defaultValue": "Undefined", + "group": "Analysis", + "help": "status\n- Undefined: The solver has not been called yet\n- Running: The solver is still running and/or did not finish\n- ConvergedEquilibrium: Converged: the iterations did not start because the system is already at equilibrium\n- DivergedLineSearch: Diverged: line search failed\n- DivergedMaxIterations: Diverged: Reached the maximum number of iterations\n- ConvergedResidualSuccessiveRatio: Converged: Residual successive ratio is smaller than the threshold\n- ConvergedResidualInitialRatio: Converged: Residual initial ratio is smaller than the threshold\n- ConvergedAbsoluteResidual: Converged: Absolute residual is smaller than the threshold\n- ConvergedRelativeEstimateDifference: Converged: Relative estimate difference is smaller than the threshold\n- ConvergedAbsoluteEstimateDifference: Converged: Absolute estimate difference is smaller than the threshold", + "name": "status", + "type": "SelectableItem" + }, + { + "defaultValue": "", + "group": "Analysis", + "help": "Graph of the residual over the iterations", + "name": "residualGraph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Trigger a warning if line search fails", + "name": "warnWhenLineSearchFails", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Trigger a warning if Newton-Raphson diverges", + "name": "warnWhenDiverge", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Generic Newton-Raphson algorithm solving nonlinear equations.\n" + }, + { + "className": "NonUniformHexahedralFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "NonUniformHexahedralFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::nonuniform", + "parents": [ + "HexahedralFEMForceFieldAndMass,Vec<3u,double>,double>>" + ], + "shortName": "nonUniformHexahedralFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "NonUniformHexahedralFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal hexahedron data", + "name": "hexahedronInfo", + "type": "vector,Vec<3u,double>,double>>HexahedronInformation,CPUMemoryManager,Vec<3u,double>,double>>HexahedronInformation>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Total mass per element", + "name": "totalMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass per particle", + "name": "particleMasses", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Lumped masses", + "name": "lumpedMasses", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use recursive matrix computation", + "name": "recursive", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "compute MBK and use it in addMBKdx, instead of using addDForce and addMDx.", + "name": "useMBK", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.NonUniform" + } + }, + "description": "Non uniform Hexahedral finite elements.\n" + }, + { + "className": "NonUniformHexahedronFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "NonUniformHexahedronFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::nonuniform", + "parents": [ + "HexahedronFEMForceFieldAndMass,Vec<3u,double>,double>>" + ], + "shortName": "nonUniformHexahedronFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "NonUniformHexahedronFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use virtual finer levels, in order to compte non-uniform stiffness", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Using this ForceField like a Mass? (rather than using a separated Mass)", + "name": "useMass", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "totalMass", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.NonUniform" + } + }, + "description": "Non uniform Hexahedral finite elements.\n" + }, + { + "className": "NormEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NormEngine", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "normEngine", + "templateName": "Vec3d", + "typeName": "NormEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of scalar norms", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "2", + "group": "Inputs", + "help": "The type of norm. Use a negative value for the infinite norm.", + "name": "normType", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Convert Vec in Real\n" + }, + { + "className": "NormalsFromPoints", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NormalsFromPoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "normalsFromPoints", + "templateName": "Vec3d", + "typeName": "NormalsFromPoints,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Vertices of the mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangles of the mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quads of the mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed vertex normals of the mesh", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Swap normals", + "name": "invertNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Use incident angles to weight faces normal contributions at each vertex", + "name": "useAngles", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Compute vertex normals by averaging face normals.\n" + }, + { + "className": "NullForceFeedback", + "creator": { + "": { + "class": { + "categories": [ + "Controller" + ], + "className": "NullForceFeedback", + "namespaceName": "sofa::component::haptics", + "parents": [ + "ForceFeedback" + ], + "shortName": "nullForceFeedback", + "templateName": "", + "typeName": "NullForceFeedback" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + } + }, + "description": "Null force feedback for haptic feedback device.\n" + }, + { + "className": "NullForceFeedbackT", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Controller" + ], + "className": "NullForceFeedbackT", + "namespaceName": "sofa::component::haptics", + "parents": [ + "MechanicalStateForceFeedback>" + ], + "shortName": "nullForceFeedbackT", + "templateName": "Rigid3d", + "typeName": "NullForceFeedbackT>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + }, + "Vec1d": { + "class": { + "categories": [ + "Controller" + ], + "className": "NullForceFeedbackT", + "namespaceName": "sofa::component::haptics", + "parents": [ + "MechanicalStateForceFeedback,Vec<1u,double>,double>>" + ], + "shortName": "nullForceFeedbackT", + "templateName": "Vec1d", + "typeName": "NullForceFeedbackT,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + } + }, + "description": "Null force feedback for haptic feedback device.\n" + }, + { + "className": "OffSequenceLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "OffSequenceLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshOffLoader" + ], + "shortName": "offSequenceLoader", + "templateName": "", + "typeName": "OffSequenceLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "1", + "group": "", + "help": "number of files in the sequence", + "name": "nbOfFiles", + "type": "i" + }, + { + "defaultValue": "0.04", + "group": "", + "help": "how long each file is loaded", + "name": "stepDuration", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Read and load an .off file at each timestep.\n" + }, + { + "className": "OglColorMap", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglColorMap", + "namespaceName": "sofa::gl::component::rendering2d", + "parents": [ + "VisualModel" + ], + "shortName": "oglColorMap", + "templateName": "", + "typeName": "OglColorMap" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "256", + "group": "", + "help": "How many colors to use", + "name": "paletteSize", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Color scheme to use", + "name": "colorScheme", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Activate rendering of color scale legend on the side", + "name": "showLegend", + "type": "bool" + }, + { + "defaultValue": "10 5", + "group": "", + "help": "Draw the legend on screen with an x,y offset", + "name": "legendOffset", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Add a title to the legend", + "name": "legendTitle", + "type": "string" + }, + { + "defaultValue": "11", + "group": "", + "help": "Font size of the legend (if any)", + "name": "legendSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "min value for drawing the legend without the need to actually use the range with getEvaluator method which sets the min", + "name": "min", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "max value for drawing the legend without the need to actually use the range with getEvaluator method which sets the max", + "name": "max", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "to change the unit of the min/max value of the legend", + "name": "legendRangeScale", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering2D" + } + }, + "description": "Provides color palette and support for conversion of numbers to colors.\n" + }, + { + "className": "OglFloat2Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat2Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<2,5126u,Vec<2u,float>>" + ], + "shortName": "oglFloat2Attribute", + "templateName": "", + "typeName": "OglFloat2Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat2Attribute\n" + }, + { + "className": "OglFloat2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglFloat2Variable", + "templateName": "", + "typeName": "OglFloat2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec2f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat2Variable\n" + }, + { + "className": "OglFloat3Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat3Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<3,5126u,Vec<3u,float>>" + ], + "shortName": "oglFloat3Attribute", + "templateName": "", + "typeName": "OglFloat3Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat3Attribute\n" + }, + { + "className": "OglFloat3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglFloat3Variable", + "templateName": "", + "typeName": "OglFloat3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec3f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat3Variable\n" + }, + { + "className": "OglFloat4Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat4Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<4,5126u,Vec<4u,float>>" + ], + "shortName": "oglFloat4Attribute", + "templateName": "", + "typeName": "OglFloat4Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat4Attribute\n" + }, + { + "className": "OglFloat4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglFloat4Variable", + "templateName": "", + "typeName": "OglFloat4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0 0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec4f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat4Variable\n" + }, + { + "className": "OglFloatAttribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatAttribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<1,5126u,float>" + ], + "shortName": "oglFloatAttribute", + "templateName": "", + "typeName": "OglFloatAttribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatAttribute\n" + }, + { + "className": "OglFloatVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable" + ], + "shortName": "oglFloatVariable", + "templateName": "", + "typeName": "OglFloatVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVariable\n" + }, + { + "className": "OglFloatVector2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVector2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable,CPUMemoryManager>>>" + ], + "shortName": "oglFloatVector2Variable", + "templateName": "", + "typeName": "OglFloatVector2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVector2Variable\n" + }, + { + "className": "OglFloatVector3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVector3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable,CPUMemoryManager>>>" + ], + "shortName": "oglFloatVector3Variable", + "templateName": "", + "typeName": "OglFloatVector3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVector3Variable\n" + }, + { + "className": "OglFloatVector4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVector4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable,CPUMemoryManager>>>" + ], + "shortName": "oglFloatVector4Variable", + "templateName": "", + "typeName": "OglFloatVector4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVector4Variable\n" + }, + { + "className": "OglFloatVectorVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVectorVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>>" + ], + "shortName": "oglFloatVectorVariable", + "templateName": "", + "typeName": "OglFloatVectorVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVectorVariable\n" + }, + { + "className": "OglInt2Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt2Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<2,5124u,Vec<2u,int>>" + ], + "shortName": "oglInt2Attribute", + "templateName": "", + "typeName": "OglInt2Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt2Attribute\n" + }, + { + "className": "OglInt2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglInt2Variable", + "templateName": "", + "typeName": "OglInt2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec2i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt2Variable\n" + }, + { + "className": "OglInt3Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt3Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<3,5124u,Vec<3u,int>>" + ], + "shortName": "oglInt3Attribute", + "templateName": "", + "typeName": "OglInt3Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt3Attribute\n" + }, + { + "className": "OglInt3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglInt3Variable", + "templateName": "", + "typeName": "OglInt3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec3i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt3Variable\n" + }, + { + "className": "OglInt4Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt4Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<4,5124u,Vec<4u,int>>" + ], + "shortName": "oglInt4Attribute", + "templateName": "", + "typeName": "OglInt4Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt4Attribute\n" + }, + { + "className": "OglInt4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglInt4Variable", + "templateName": "", + "typeName": "OglInt4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0 0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec4i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt4Variable\n" + }, + { + "className": "OglIntAttribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntAttribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<1,5124u,int>" + ], + "shortName": "oglIntAttribute", + "templateName": "", + "typeName": "OglIntAttribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntAttribute\n" + }, + { + "className": "OglIntVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable" + ], + "shortName": "oglIntVariable", + "templateName": "", + "typeName": "OglIntVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVariable\n" + }, + { + "className": "OglIntVector2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVector2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglIntVectorVariable" + ], + "shortName": "oglIntVector2Variable", + "templateName": "", + "typeName": "OglIntVector2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVector2Variable\n" + }, + { + "className": "OglIntVector3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVector3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglIntVectorVariable" + ], + "shortName": "oglIntVector3Variable", + "templateName": "", + "typeName": "OglIntVector3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVector3Variable\n" + }, + { + "className": "OglIntVector4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVector4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglIntVectorVariable" + ], + "shortName": "oglIntVector4Variable", + "templateName": "", + "typeName": "OglIntVector4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVector4Variable\n" + }, + { + "className": "OglIntVectorVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVectorVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>>" + ], + "shortName": "oglIntVectorVariable", + "templateName": "", + "typeName": "OglIntVectorVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVectorVariable\n" + }, + { + "className": "OglLabel", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglLabel", + "namespaceName": "sofa::gl::component::rendering2d", + "parents": [ + "VisualModel" + ], + "shortName": "oglLabel", + "templateName": "", + "typeName": "OglLabel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The prefix of the text to display", + "name": "prefix", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "The text to display", + "name": "label", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "The suffix of the text to display", + "name": "suffix", + "type": "string" + }, + { + "defaultValue": "10", + "group": "", + "help": "The x position of the text on the screen", + "name": "x", + "type": "I" + }, + { + "defaultValue": "10", + "group": "", + "help": "The y position of the text on the screen", + "name": "y", + "type": "I" + }, + { + "defaultValue": "14", + "group": "", + "help": "The size of the font used to display the text on the screen", + "name": "fontsize", + "type": "I" + }, + { + "defaultValue": "0.5 0.5 0.5 1", + "group": "", + "help": "The color of the text to display. (default='gray')", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "Override the color value but one that contrast with the background color", + "name": "selectContrastingColor", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Update the display of the label every nb of time steps", + "name": "updateLabelEveryNbSteps", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering2D" + } + }, + "description": "Display 2D text in the viewport.\n" + }, + { + "className": "OglMatrix2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>>" + ], + "shortName": "oglMatrix2Variable", + "templateName": "", + "typeName": "OglMatrix2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix2Variable\n" + }, + { + "className": "OglMatrix2x3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix2x3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix2x3Variable", + "templateName": "", + "typeName": "OglMatrix2x3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix2x3Variable\n" + }, + { + "className": "OglMatrix2x4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix2x4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix2x4Variable", + "templateName": "", + "typeName": "OglMatrix2x4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix2x4Variable\n" + }, + { + "className": "OglMatrix3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix3Variable", + "templateName": "", + "typeName": "OglMatrix3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix3Variable\n" + }, + { + "className": "OglMatrix3x2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix3x2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix3x2Variable", + "templateName": "", + "typeName": "OglMatrix3x2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix3x2Variable\n" + }, + { + "className": "OglMatrix3x4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix3x4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix3x4Variable", + "templateName": "", + "typeName": "OglMatrix3x4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix3x4Variable\n" + }, + { + "className": "OglMatrix4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix4Variable", + "templateName": "", + "typeName": "OglMatrix4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix4Variable\n" + }, + { + "className": "OglMatrix4VectorVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix4VectorVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable,CPUMemoryManager>>>" + ], + "shortName": "oglMatrix4VectorVariable", + "templateName": "", + "typeName": "OglMatrix4VectorVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix4VectorVariable\n" + }, + { + "className": "OglMatrix4x2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix4x2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix4x2Variable", + "templateName": "", + "typeName": "OglMatrix4x2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix4x2Variable\n" + }, + { + "className": "OglMatrix4x3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix4x3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix4x3Variable", + "templateName": "", + "typeName": "OglMatrix4x3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix4x3Variable\n" + }, + { + "className": "OglModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglModel", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModelImpl" + ], + "shortName": "oglModel", + "templateName": "Vec3d", + "typeName": "OglModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if rest positions must be initialized with initial positions", + "name": "initRestPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normal smoothing groups should be read from file", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normals should be updated at each iteration", + "name": "updateNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tangents should be computed at startup", + "name": "computeTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if tangents should be updated at each iteration", + "name": "updateTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if topological changes should be handled", + "name": "handleDynamicTopology", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if UV seams should be handled even when duplicate UVs are merged", + "name": "fixMergedUVSeams", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep and draw lines (false by default)", + "name": "keepLines", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "vertices of the model (only if vertices have multiple normals/texcoords, otherwise positions are used)", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "coordinates of the texture", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "tangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "bitangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "edges of the model", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "triangles of the model", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "quads of the model", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": " Path to an ogl model", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the Texture", + "name": "texturename", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Translation of the object", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Rotation of the object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Initial Scale of the object", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "1 1", + "group": "", + "help": "Scale of the texture", + "name": "scaleTex", + "type": "Vec2f" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Translation of the texture", + "name": "translationTex", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Material", + "name": "material", + "type": "Material" + }, + { + "defaultValue": "0", + "group": "", + "help": "Give Texture Coordinates without the texture binding", + "name": "putOnlyTexCoords", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "When sRGB rendering is enabled, is the texture in sRGB colorspace?", + "name": "srgbTexturing", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Groups of triangles and quads using a given material", + "name": "groups", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blend transparent parts", + "name": "blendTranslucency", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "is alpha premultiplied ?", + "name": "premultipliedAlpha", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Write into Z Buffer for Transparent Object", + "name": "writeZTransparent", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable alpha blending", + "name": "alphaBlend", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable depth testing", + "name": "depthTest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Face culling (0 = no culling, 1 = cull back faces, 2 = cull front faces)", + "name": "cullFace", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Line width (set if != 1, only for lines rendering)", + "name": "lineWidth", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "Point size (set if != 1, only for points rendering)", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth line rendering", + "name": "lineSmooth", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth point rendering", + "name": "pointSmooth", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Select types of primitives to send (necessary for some shader types such as geometry or tessellation)", + "name": "primitiveType", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how source and destination colors are combined", + "name": "blendEquation", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha source blending factors are computed", + "name": "sfactor", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha destination blending factors are computed", + "name": "dfactor", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Generic visual model for OpenGL display.\n" + }, + { + "className": "OglOITShader", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglOITShader", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglShader" + ], + "shortName": "oglOITShader", + "templateName": "", + "typeName": "OglOITShader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Turn On the shader?", + "name": "turnOn", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Will this shader be activated manually or automatically?", + "name": "passive", + "type": "bool" + }, + { + "defaultValue": "[ 'shaders/toonShading.vert' ]", + "group": "", + "help": "Set the vertex shader filename to load", + "name": "fileVertexShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "[ 'shaders/toonShading.frag' ]", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fileFragmentShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the geometry shader filename to load", + "name": "fileGeometryShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation control filename to load", + "name": "fileTessellationControlShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation evaluation filename to load", + "name": "fileTessellationEvaluationShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set input types for the geometry shader", + "name": "geometryInputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set output types for the geometry shader", + "name": "geometryOutputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set max number of vertices in output for the geometry shader", + "name": "geometryVerticesOut", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default outer level (edge subdivisions)", + "name": "tessellationOuterLevel", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default inner level (face subdivisions)", + "name": "tessellationInnerLevel", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set current active shader", + "name": "indexActiveShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "it enables writing to gl_BackColor inside a GLSL vertex shader", + "name": "backfaceWriting", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "clamp the vertex color between 0 and 1", + "name": "clampVertexColor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Shader implementating Order Independent Transparency.\n" + }, + { + "className": "OglRenderingSRGB", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglRenderingSRGB", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManager" + ], + "shortName": "oglRenderingSRGB", + "templateName": "", + "typeName": "OglRenderingSRGB" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Set the current visual context framebuffer with SRGB.\n" + }, + { + "className": "OglSceneFrame", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglSceneFrame", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel" + ], + "shortName": "oglSceneFrame", + "templateName": "", + "typeName": "OglSceneFrame" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Display the frame or not", + "name": "draw", + "type": "bool" + }, + { + "defaultValue": "Cylinders", + "group": "", + "help": "Style of the frame\n- Arrows: The frame is composed of arrows\n- Cylinders: The frame is composed of cylinders\n- CubeCones: The frame is composed of cubes and cones", + "name": "style", + "type": "SelectableItem" + }, + { + "defaultValue": "BottomRight", + "group": "", + "help": "Alignment of the frame in the view\n- BottomLeft: The scene frame is displayed in the bottom-left corner\n- BottomRight: The scene frame is displayed in the bottom-right corner\n- TopRight: The scene frame is displayed in the top-right corner\n- TopLeft: The scene frame is displayed in the top-left corner", + "name": "alignment", + "type": "SelectableItem" + }, + { + "defaultValue": "150", + "group": "", + "help": "Size of the viewport where the frame is rendered", + "name": "viewportSize", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Display a frame at the corner of the scene view.\n" + }, + { + "className": "OglShader", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglShader", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "Shader", + "VisualModel" + ], + "shortName": "oglShader", + "templateName": "", + "typeName": "OglShader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Turn On the shader?", + "name": "turnOn", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Will this shader be activated manually or automatically?", + "name": "passive", + "type": "bool" + }, + { + "defaultValue": "[ 'shaders/toonShading.vert' ]", + "group": "", + "help": "Set the vertex shader filename to load", + "name": "fileVertexShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "[ 'shaders/toonShading.frag' ]", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fileFragmentShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the geometry shader filename to load", + "name": "fileGeometryShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation control filename to load", + "name": "fileTessellationControlShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation evaluation filename to load", + "name": "fileTessellationEvaluationShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set input types for the geometry shader", + "name": "geometryInputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set output types for the geometry shader", + "name": "geometryOutputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set max number of vertices in output for the geometry shader", + "name": "geometryVerticesOut", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default outer level (edge subdivisions)", + "name": "tessellationOuterLevel", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default inner level (face subdivisions)", + "name": "tessellationInnerLevel", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set current active shader", + "name": "indexActiveShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "it enables writing to gl_BackColor inside a GLSL vertex shader", + "name": "backfaceWriting", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "clamp the vertex color between 0 and 1", + "name": "clampVertexColor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Set custom shader for the current visual context.\n" + }, + { + "className": "OglShaderDefineMacro", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "OglShaderDefineMacro", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglShaderMacro" + ], + "shortName": "oglShaderDefineMacro", + "templateName": "", + "typeName": "OglShaderDefineMacro" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set a value for define macro", + "name": "value", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Add a custom preprocessor instruction to the shader in the current visual context.\n" + }, + { + "className": "OglShaderVisualModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglShaderVisualModel", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglModel" + ], + "shortName": "oglShaderVisualModel", + "templateName": "Vec3d", + "typeName": "OglShaderVisualModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if rest positions must be initialized with initial positions", + "name": "initRestPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normal smoothing groups should be read from file", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normals should be updated at each iteration", + "name": "updateNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tangents should be computed at startup", + "name": "computeTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if tangents should be updated at each iteration", + "name": "updateTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if topological changes should be handled", + "name": "handleDynamicTopology", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if UV seams should be handled even when duplicate UVs are merged", + "name": "fixMergedUVSeams", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep and draw lines (false by default)", + "name": "keepLines", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "vertices of the model (only if vertices have multiple normals/texcoords, otherwise positions are used)", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "coordinates of the texture", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "tangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "bitangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "edges of the model", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "triangles of the model", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "quads of the model", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": " Path to an ogl model", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the Texture", + "name": "texturename", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Translation of the object", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Rotation of the object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Initial Scale of the object", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "1 1", + "group": "", + "help": "Scale of the texture", + "name": "scaleTex", + "type": "Vec2f" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Translation of the texture", + "name": "translationTex", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Material", + "name": "material", + "type": "Material" + }, + { + "defaultValue": "0", + "group": "", + "help": "Give Texture Coordinates without the texture binding", + "name": "putOnlyTexCoords", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "When sRGB rendering is enabled, is the texture in sRGB colorspace?", + "name": "srgbTexturing", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Groups of triangles and quads using a given material", + "name": "groups", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blend transparent parts", + "name": "blendTranslucency", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "is alpha premultiplied ?", + "name": "premultipliedAlpha", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Write into Z Buffer for Transparent Object", + "name": "writeZTransparent", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable alpha blending", + "name": "alphaBlend", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable depth testing", + "name": "depthTest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Face culling (0 = no culling, 1 = cull back faces, 2 = cull front faces)", + "name": "cullFace", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Line width (set if != 1, only for lines rendering)", + "name": "lineWidth", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "Point size (set if != 1, only for points rendering)", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth line rendering", + "name": "lineSmooth", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth point rendering", + "name": "pointSmooth", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Select types of primitives to send (necessary for some shader types such as geometry or tessellation)", + "name": "primitiveType", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how source and destination colors are combined", + "name": "blendEquation", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha source blending factors are computed", + "name": "sfactor", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha destination blending factors are computed", + "name": "dfactor", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Visual model for OpenGL display using a custom shader.\n" + }, + { + "className": "OglShadowShader", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglShadowShader", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglShader" + ], + "shortName": "oglShadowShader", + "templateName": "", + "typeName": "OglShadowShader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Turn On the shader?", + "name": "turnOn", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Will this shader be activated manually or automatically?", + "name": "passive", + "type": "bool" + }, + { + "defaultValue": "[ 'shaders/toonShading.vert' ]", + "group": "", + "help": "Set the vertex shader filename to load", + "name": "fileVertexShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "[ 'shaders/toonShading.frag' ]", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fileFragmentShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the geometry shader filename to load", + "name": "fileGeometryShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation control filename to load", + "name": "fileTessellationControlShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation evaluation filename to load", + "name": "fileTessellationEvaluationShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set input types for the geometry shader", + "name": "geometryInputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set output types for the geometry shader", + "name": "geometryOutputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set max number of vertices in output for the geometry shader", + "name": "geometryVerticesOut", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default outer level (edge subdivisions)", + "name": "tessellationOuterLevel", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default inner level (face subdivisions)", + "name": "tessellationInnerLevel", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set current active shader", + "name": "indexActiveShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "it enables writing to gl_BackColor inside a GLSL vertex shader", + "name": "backfaceWriting", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "clamp the vertex color between 0 and 1", + "name": "clampVertexColor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "This component sets the shader system responsible of the shadowing.\n" + }, + { + "className": "OglTexture", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglTexture", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualModel", + "ShaderElement" + ], + "shortName": "oglTexture", + "templateName": "", + "typeName": "OglTexture" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture Filename", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set the texture unit", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "1", + "group": "", + "help": "enabled ?", + "name": "enabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Repeat Texture ?", + "name": "repeat", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Interpolate Texture ?", + "name": "linearInterpolation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Generate mipmaps ?", + "name": "generateMipmaps", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "SRGB colorspace ?", + "name": "srgbColorspace", + "type": "bool" + }, + { + "defaultValue": "-1000", + "group": "", + "help": "Minimum mipmap lod ?", + "name": "minLod", + "type": "f" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Maximum mipmap lod ?", + "name": "maxLod", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Width of procedural Texture", + "name": "proceduralTextureWidth", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Height of procedural Texture", + "name": "proceduralTextureHeight", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Nb bits per color", + "name": "proceduralTextureNbBits", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Data of procedural Texture ", + "name": "proceduralTextureData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-X cubemap face", + "name": "cubemapFilenamePosX", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-Y cubemap face", + "name": "cubemapFilenamePosY", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-Z cubemap face", + "name": "cubemapFilenamePosZ", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-X cubemap face", + "name": "cubemapFilenameNegX", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-Y cubemap face", + "name": "cubemapFilenameNegY", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-Z cubemap face", + "name": "cubemapFilenameNegZ", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Load a texture to be used in a shader.\n" + }, + { + "className": "OglTexture2D", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglTexture2D", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglTexture" + ], + "shortName": "oglTexture2D", + "templateName": "", + "typeName": "OglTexture2D" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture Filename", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set the texture unit", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "1", + "group": "", + "help": "enabled ?", + "name": "enabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Repeat Texture ?", + "name": "repeat", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Interpolate Texture ?", + "name": "linearInterpolation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Generate mipmaps ?", + "name": "generateMipmaps", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "SRGB colorspace ?", + "name": "srgbColorspace", + "type": "bool" + }, + { + "defaultValue": "-1000", + "group": "", + "help": "Minimum mipmap lod ?", + "name": "minLod", + "type": "f" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Maximum mipmap lod ?", + "name": "maxLod", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Width of procedural Texture", + "name": "proceduralTextureWidth", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Height of procedural Texture", + "name": "proceduralTextureHeight", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Nb bits per color", + "name": "proceduralTextureNbBits", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Data of procedural Texture ", + "name": "proceduralTextureData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-X cubemap face", + "name": "cubemapFilenamePosX", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-Y cubemap face", + "name": "cubemapFilenamePosY", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-Z cubemap face", + "name": "cubemapFilenamePosZ", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-X cubemap face", + "name": "cubemapFilenameNegX", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-Y cubemap face", + "name": "cubemapFilenameNegY", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-Z cubemap face", + "name": "cubemapFilenameNegZ", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture2D Filename", + "name": "texture2DFilename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Load a 2d texture to be used in a shader.\n" + }, + { + "className": "OglTexturePointer", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglTexturePointer", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualModel", + "ShaderElement" + ], + "shortName": "oglTexturePointer", + "templateName": "", + "typeName": "OglTexturePointer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set the texture unit", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "1", + "group": "", + "help": "enabled ?", + "name": "enabled", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "OglTexture", + "help": "OglTexture", + "name": "oglTexture" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Pointer to a OglTexture, useful for sharing a texture between multiple shaders.\n" + }, + { + "className": "OglUInt2Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglUInt2Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<2,5125u,Vec<2u,unsigned int>>" + ], + "shortName": "oglUInt2Attribute", + "templateName": "", + "typeName": "OglUInt2Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglUInt2Attribute\n" + }, + { + "className": "OglUInt3Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglUInt3Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<3,5125u,Vec<3u,unsigned int>>" + ], + "shortName": "oglUInt3Attribute", + "templateName": "", + "typeName": "OglUInt3Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglUInt3Attribute\n" + }, + { + "className": "OglUInt4Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglUInt4Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<4,5125u,Vec<4u,unsigned int>>" + ], + "shortName": "oglUInt4Attribute", + "templateName": "", + "typeName": "OglUInt4Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglUInt4Attribute\n" + }, + { + "className": "OglUIntAttribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglUIntAttribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<1,5125u,unsigned int>" + ], + "shortName": "oglUIntAttribute", + "templateName": "", + "typeName": "OglUIntAttribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglUIntAttribute\n" + }, + { + "className": "OglViewport", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglViewport", + "namespaceName": "sofa::gl::component::rendering2d", + "parents": [ + "VisualManager" + ], + "shortName": "oglViewport", + "templateName": "", + "typeName": "OglViewport" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Viewport position", + "name": "screenPosition", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "Viewport size", + "name": "screenSize", + "type": "Vec2I" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Camera's position in eye's space", + "name": "cameraPosition", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "", + "help": "Camera's orientation", + "name": "cameraOrientation", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's rigid coord", + "name": "cameraRigid", + "type": "RigidCoord3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's ZNear", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's ZFar", + "name": "zFar", + "type": "d" + }, + { + "defaultValue": "60", + "group": "", + "help": "Field of View (Y axis)", + "name": "fovy", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable visibility of the viewport", + "name": "enabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, viewport will be hidden if advancedRendering visual flag is not enabled", + "name": "advancedRendering", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use a FBO to render the viewport", + "name": "useFBO", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Swap this viewport with the main view", + "name": "swapMainView", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw a frame representing the camera (see it in main viewport)", + "name": "drawCamera", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering2D" + } + }, + "description": "Set an additional viewport into the main one.\n" + }, + { + "className": "OrderIndependentTransparencyManager", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OrderIndependentTransparencyManager", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManager" + ], + "shortName": "orderIndependentTransparencyManager", + "templateName": "", + "typeName": "OrderIndependentTransparencyManager" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Depth scale", + "name": "depthScale", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Order Independent Transparency Manager (to be used with OglOITShader).\n" + }, + { + "className": "OscillatingTorsionPressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "OscillatingTorsionPressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "oscillatingTorsionPressureFF", + "templateName": "Vec3d", + "typeName": "OscillatingTorsionPressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Map between triangle indices and their pressure", + "name": "trianglePressureMap", + "type": "vector,Vec<3u,double>,double>>TrianglePressureInformation,CPUMemoryManager,Vec<3u,double>,double>>TrianglePressureInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Moment force applied on the entire surface", + "name": "moment", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of triangles separated with commas where a pressure is applied", + "name": "triangleList", + "type": "vector" + }, + { + "defaultValue": "0 0 1", + "group": "", + "help": "Axis of rotation and normal direction for the plane selection of triangles", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Center of rotation", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Strength of the penalty force", + "name": "penalty", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "frequency of oscillation", + "name": "frequency", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum distance from the origin along the normal direction", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum distance from the origin along the normal direction", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw triangles which have a given pressure", + "name": "showForces", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "OscillatingTorsionPressure.\n" + }, + { + "className": "OscillatorProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "OscillatorProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "oscillatorProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "OscillatorProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Define a sequence of oscillating particules: \n[index, Mean(x,y,z), amplitude(x,y,z), pulsation, phase]", + "name": "oscillators", + "type": "vector>Oscillator,CPUMemoryManager>Oscillator>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "OscillatorProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "oscillatorProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "OscillatorProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Define a sequence of oscillating particules: \n[index, Mean(x,y,z), amplitude(x,y,z), pulsation, phase]", + "name": "oscillators", + "type": "vector,Vec<3u,double>,double>>Oscillator,CPUMemoryManager,Vec<3u,double>,double>>Oscillator>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Apply a sinusoidal trajectory to given points.\n" + }, + { + "className": "PCGLinearSolver", + "creator": { + "GraphScattered": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "PCGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver" + ], + "shortName": "pCGLinearSolver", + "templateName": "GraphScattered", + "typeName": "PCGLinearSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use a preconditioner", + "name": "use_precond", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to precondition the conjugate gradient", + "name": "preconditioner" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "Linear solver using the preconditioned conjugate gradient iterative algorithm.\n" + }, + { + "className": "PairBoxROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PairBoxROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "pairBoxROI", + "templateName": "Rigid3d", + "typeName": "PairBoxROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Inclusive box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "inclusiveBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "", + "help": "Included box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "includedBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertices of the mesh loaded", + "name": "meshPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Inclusive Box", + "name": "drawInclusiveBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Included Box", + "name": "drawIncludedBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Draw Size", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PairBoxROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "pairBoxROI", + "templateName": "Vec3d", + "typeName": "PairBoxROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Inclusive box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "inclusiveBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "", + "help": "Included box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "includedBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertices of the mesh loaded", + "name": "meshPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Inclusive Box", + "name": "drawInclusiveBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Included Box", + "name": "drawIncludedBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Draw Size", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PairBoxROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "pairBoxROI", + "templateName": "Vec6d", + "typeName": "PairBoxROI,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Inclusive box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "inclusiveBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "", + "help": "Included box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "includedBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertices of the mesh loaded", + "name": "meshPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Inclusive Box", + "name": "drawInclusiveBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Included Box", + "name": "drawIncludedBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Draw Size", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find all the points located between two boxes.\n" + }, + { + "className": "ParabolicProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "ParabolicProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "parabolicProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "ParabolicProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "first point of the parabol", + "name": "P1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second point of the parabol", + "name": "P2", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "third point of the parabol", + "name": "P3", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin Time of the motion", + "name": "BeginTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End Time of the motion", + "name": "EndTime", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "ParabolicProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "parabolicProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "ParabolicProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "first point of the parabol", + "name": "P1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second point of the parabol", + "name": "P2", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "third point of the parabol", + "name": "P3", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin Time of the motion", + "name": "BeginTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End Time of the motion", + "name": "EndTime", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Apply a parabolic trajectory to given points.\n" + }, + { + "className": "ParallelBVHNarrowPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "ParallelBVHNarrowPhase", + "namespaceName": "multithreading::component::collision::detection::algorithm", + "parents": [ + "BVHNarrowPhase" + ], + "shortName": "parallelBVHNarrowPhase", + "templateName": "", + "typeName": "ParallelBVHNarrowPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel version of the narrow phase collision detection based on boundary volume hierarchy.\n" + }, + { + "className": "ParallelBruteForceBroadPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "ParallelBruteForceBroadPhase", + "namespaceName": "multithreading::component::collision::detection::algorithm", + "parents": [ + "BruteForceBroadPhase" + ], + "shortName": "parallelBruteForceBroadPhase", + "templateName": "", + "typeName": "ParallelBruteForceBroadPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "if not empty, objects that do not intersect this bounding-box will be ignored", + "name": "box", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel version of the collision detection using extensive pair-wise tests performed concurrently.\n" + }, + { + "className": "ParallelCGLinearSolver", + "creator": { + "ParallelCompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "ParallelCGLinearSolver", + "namespaceName": "multithreading::component::linearsolver::iterative", + "parents": [ + "CGLinearSolver,CRSMechanicalPolicy>,FullVector>", + "Base" + ], + "shortName": "parallelCGLinearSolver", + "templateName": "ParallelCompressedRowSparseMatrixMat3x3d", + "typeName": "ParallelCGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "MultiThreading" + }, + "ParallelCompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "ParallelCGLinearSolver", + "namespaceName": "multithreading::component::linearsolver::iterative", + "parents": [ + "CGLinearSolver,FullVector>", + "Base" + ], + "shortName": "parallelCGLinearSolver", + "templateName": "ParallelCompressedRowSparseMatrixd", + "typeName": "ParallelCGLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel version of the linear solver using the conjugate gradient iterative algorithm.\n" + }, + { + "className": "ParallelHexahedronFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ParallelHexahedronFEMForceField", + "namespaceName": "multithreading::component::forcefield::solidmechanics::fem::elastic", + "parents": [ + "HexahedronFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "parallelHexahedronFEMFF", + "templateName": "Vec3d", + "typeName": "ParallelHexahedronFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel implementation of a linear elastic material using hexahedral finite elements.\n" + }, + { + "className": "ParallelMeshSpringForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelMeshSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "MeshSpringForceField,Vec<1u,double>,double>>", + "ParallelSpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "parallelMeshSpringFF", + "templateName": "Vec1d", + "typeName": "ParallelMeshSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelMeshSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "MeshSpringForceField,Vec<2u,double>,double>>", + "ParallelSpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "parallelMeshSpringFF", + "templateName": "Vec2d", + "typeName": "ParallelMeshSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelMeshSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "MeshSpringForceField,Vec<3u,double>,double>>", + "ParallelSpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "parallelMeshSpringFF", + "templateName": "Vec3d", + "typeName": "ParallelMeshSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel stiff springs acting along the edges of a mesh.\n" + }, + { + "className": "ParallelSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField>" + ], + "shortName": "parallelSpringFF", + "templateName": "Rigid3d", + "typeName": "ParallelSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "parallelSpringFF", + "templateName": "Vec1d", + "typeName": "ParallelSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "parallelSpringFF", + "templateName": "Vec2d", + "typeName": "ParallelSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "parallelSpringFF", + "templateName": "Vec3d", + "typeName": "ParallelSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<6u,double>,double>>" + ], + "shortName": "parallelSpringFF", + "templateName": "Vec6d", + "typeName": "ParallelSpringForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel stiff springs.\n" + }, + { + "className": "ParallelTetrahedronFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ParallelTetrahedronFEMForceField", + "namespaceName": "multithreading::component::forcefield::solidmechanics::fem::elastic", + "parents": [ + "TetrahedronFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "parallelTetrahedronFEMFF", + "templateName": "Vec3d", + "typeName": "ParallelTetrahedronFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"small\", \"large\" (by QR), \"polar\" or \"svd\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Allow specification of different stiffness per element. If there are N element and M values are specified, the youngModulus factor for element i would be localStiffnessFactor[i*M/N]", + "name": "localStiffnessFactor", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "computeGlobalMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Plastic Max Threshold (2-norm of the strain)", + "name": "plasticMaxThreshold", + "type": "d" + }, + { + "defaultValue": "0.0001", + "group": "", + "help": "Plastic Yield Threshold (2-norm of the strain)", + "name": "plasticYieldThreshold", + "type": "d" + }, + { + "defaultValue": "0.9", + "group": "", + "help": "Plastic Creep Factor * dt [0,1]. Warning this factor depends on dt.", + "name": "plasticCreep", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Heterogeneous Tetra in different color", + "name": "drawHeterogeneousTetra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute and display von Mises stress: 0: no computations, 1: using corotational strain, 2: using full Green strain. Set listening=1", + "name": "computeVonMisesStress", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per element", + "name": "vonMisesPerElement", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per node", + "name": "vonMisesPerNode", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of colors describing the VonMises stress", + "name": "vonMisesStressColors", + "type": "vector" + }, + { + "defaultValue": "Blue to Red", + "group": "Visualization", + "help": "Color map used to show stress values", + "name": "showStressColorMap", + "type": "string" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Alpha for vonMises visualisation", + "name": "showStressAlpha", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw points showing vonMises stress interpolated in nodes", + "name": "showVonMisesStressPerNode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw elements showing vonMises stress interpolated in nodes", + "name": "showVonMisesStressPerNodeColorMap", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw triangles showing vonMises stress interpolated in elements", + "name": "showVonMisesStressPerElement", + "type": "bool" + }, + { + "defaultValue": "0.333", + "group": "Visualization", + "help": "draw gap between elements (when showWireFrame is disabled) [0,1]: 0: no gap, 1: no element", + "name": "showElementGapScale", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "update structures (precomputed in init) using stiffness parameters in each iteration (set listening=1)", + "name": "updateStiffness", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel implementation of a linear elastic material using tetrahedral finite elements..\n" + }, + { + "className": "PartialFixedProjectiveConstraint", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Rigid2d", + "typeName": "PartialFixedProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "PartialFixedProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint,Vec<1u,double>,double>>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "PartialFixedProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint,Vec<2u,double>,double>>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PartialFixedProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint,Vec<3u,double>,double>>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PartialFixedProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint,Vec<6u,double>,double>>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "PartialFixedProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given particles to their initial positions, in some directions only.\n" + }, + { + "className": "PartialLinearMovementProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "PartialLinearMovementProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "PartialLinearMovementProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PartialLinearMovementProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PartialLinearMovementProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "PartialLinearMovementProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Impose a motion to given DOFs (translation and rotation) in some directions only.\n" + }, + { + "className": "PatchTestMovementProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PatchTestMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "patchTestMovementProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "PatchTestMovementProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the mesh", + "name": "meshIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin time of the bilinear constraint", + "name": "beginConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End time of the bilinear constraint", + "name": "endConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the constrained points", + "name": "constrainedPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements of the corners of the grid", + "name": "cornerMovements", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "corner points for computing constraint", + "name": "cornerPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "draw constrained points", + "name": "drawConstrainedPoints", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PatchTestMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "patchTestMovementProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PatchTestMovementProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the mesh", + "name": "meshIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin time of the bilinear constraint", + "name": "beginConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End time of the bilinear constraint", + "name": "endConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the constrained points", + "name": "constrainedPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements of the corners of the grid", + "name": "cornerMovements", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "corner points for computing constraint", + "name": "cornerPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "draw constrained points", + "name": "drawConstrainedPoints", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Impose a motion to all the boundary points of a mesh.\n" + }, + { + "className": "PauseAnimationOnEvent", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "PauseAnimationOnEvent", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "PauseAnimation" + ], + "shortName": "pauseAnimationOnEvent", + "templateName": "", + "typeName": "PauseAnimationOnEvent" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "This component pauses the simulation when receiving a PauseEvent.\n" + }, + { + "className": "PenalityContactForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "PenalityContactForceField", + "namespaceName": "sofa::component::collision::response::contact", + "parents": [ + "PairInteractionForceField,Vec<3u,double>,double>>" + ], + "shortName": "penalityContactFF", + "templateName": "Vec3d", + "typeName": "PenalityContactForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Collision.Response.Contact" + } + }, + "description": "Contact using repulsive springs.\n" + }, + { + "className": "PlaneForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "planeFF", + "templateName": "Rigid3d", + "typeName": "PlaneForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "planeFF", + "templateName": "Vec1d", + "typeName": "PlaneForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec1d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "planeFF", + "templateName": "Vec2d", + "typeName": "PlaneForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec2d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "planeFF", + "templateName": "Vec3d", + "typeName": "PlaneForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "planeFF", + "templateName": "Vec6d", + "typeName": "PlaneForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Repulsion along the normal to a plane.\n" + }, + { + "className": "PlaneProjectiveConstraint", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "planeProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PlaneProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "A point in the plane", + "name": "origin", + "type": "Vec2d" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Normal vector to the plane", + "name": "normal", + "type": "Vec2d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "planeProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PlaneProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "A point in the plane", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Normal vector to the plane", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Project particles to an affine plane.\n" + }, + { + "className": "PlaneROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PlaneROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "planeROI", + "templateName": "Rigid3d", + "typeName": "PlaneROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of planes defined by 3 points and a depth distance", + "name": "plane", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Box(es)", + "name": "drawBoxes", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PlaneROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "planeROI", + "templateName": "Vec3d", + "typeName": "PlaneROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of planes defined by 3 points and a depth distance", + "name": "plane", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Box(es)", + "name": "drawBoxes", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the primitives inside a given plane.\n" + }, + { + "className": "PlasticMaterial", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "PlasticMaterial", + "namespaceName": "sofa::component::solidmechanics::fem::hyperelastic::material", + "parents": [ + "BaseMaterial" + ], + "shortName": "plasticMaterial", + "templateName": "", + "typeName": "PlasticMaterial" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "3000", + "group": "", + "help": "Young modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.HyperElastic" + } + }, + "description": "Plastic material.\n" + }, + { + "className": "PointCollisionModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "PointCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "pointCollisionModel", + "templateName": "Vec3d", + "typeName": "PointCollisionModel,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the point model (when surface normals are defined on these points)", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate computation of normal vectors (required for some collision detection algorithms)", + "name": "computeNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display Collision Model Points free position(in green)", + "name": "displayFreePosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model which represents a set of points.\n" + }, + { + "className": "PointProjectiveConstraint", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PointProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "pointProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "PointProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Target of the projection", + "name": "point", + "type": "Vec1d" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PointProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "pointProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PointProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Target of the projection", + "name": "point", + "type": "Vec2d" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PointProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "pointProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PointProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Target of the projection", + "name": "point", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PointProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "pointProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "PointProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Target of the projection", + "name": "point", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Project particles to a point\n" + }, + { + "className": "PointSetGeometryAlgorithms", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "GeometryAlgorithms" + ], + "shortName": "pointSetGeometryAlgorithms", + "templateName": "Vec1d", + "typeName": "PointSetGeometryAlgorithms,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "GeometryAlgorithms" + ], + "shortName": "pointSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "PointSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "GeometryAlgorithms" + ], + "shortName": "pointSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "PointSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to a point topology.\n" + }, + { + "className": "PointSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TopologyContainer" + ], + "shortName": "pointSetTopologyContainer", + "templateName": "", + "typeName": "PointSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to a point topology.\n" + }, + { + "className": "PointSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TopologyModifier" + ], + "shortName": "pointSetTopologyModifier", + "templateName": "", + "typeName": "PointSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to a point topology.\n" + }, + { + "className": "PointSplatModel", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "PointSplatModel", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel" + ], + "shortName": "pointSplatModel", + "templateName": "", + "typeName": "PointSplatModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of the spheres.", + "name": "radius", + "type": "f" + }, + { + "defaultValue": "32", + "group": "", + "help": "Size of the billboard texture.", + "name": "textureSize", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Opacity of the billboards. 1.0 is 100% opaque.", + "name": "alpha", + "type": "f" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Billboard color.(default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "scalar field modulating point colors", + "name": "pointData", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Visualization for a cloud of points using splatting.\n" + }, + { + "className": "PointsFromIndices", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PointsFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "pointsFromIndices", + "templateName": "Vec3d", + "typeName": "PointsFromIndices,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Coordinates of the points contained in indices", + "name": "indices_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the points given a list of indices.\n" + }, + { + "className": "PolynomialRestShapeSpringsForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PolynomialRestShapeSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "polynomialRestShapeSpringsFF", + "templateName": "Vec3d", + "typeName": "PolynomialRestShapeSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points controlled by the rest shape springs", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points from the external Mechanical State that define the rest shape springs", + "name": "external_points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coefficients for all spring polynomials", + "name": "polynomialStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "vector of values that show polynomials degrees", + "name": "polynomialDegree", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "initial virtual length of the spring", + "name": "initialLength", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "denominator correction adding shift value", + "name": "smoothShift", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "denominator correction adding scale", + "name": "smoothScale", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "MechanicalState", + "help": "rest_shape can be defined by the position of an external Mechanical State", + "name": "external_rest_shape" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Simple elastic springs applied to given degrees of freedom between their current and rest shape position.\n" + }, + { + "className": "PolynomialSpringsForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "PolynomialSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<3u,double>,double>>" + ], + "shortName": "polynomialSpringsFF", + "templateName": "Vec3d", + "typeName": "PolynomialSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points related to the first object", + "name": "firstObjectPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points related to the second object", + "name": "secondObjectPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coefficients for all spring polynomials", + "name": "polynomialStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "vector of values that show polynomials degrees", + "name": "polynomialDegree", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag to compute initial length for springs", + "name": "computeZeroLength", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "initial length for springs", + "name": "zeroLength", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Indicates if object compresses without any reaction force", + "name": "compressible", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display (default=0.02)", + "name": "showIndicesScale", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Simple elastic springs applied to given degrees of freedom between their current and rest shape position.\n" + }, + { + "className": "PositionBasedDynamicsProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "PositionBasedDynamicsProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "PositionBasedDynamicsProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PositionBasedDynamicsProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PositionBasedDynamicsProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "PositionBasedDynamicsProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Position-based dynamics\n" + }, + { + "className": "PositionalLight", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "PositionalLight", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "Light" + ], + "shortName": "positionalLight", + "templateName": "", + "typeName": "PositionalLight" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Set the color of the light. (default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Set size for shadow texture ", + "name": "shadowTextureSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Light Source", + "name": "drawSource", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZNear", + "name": "zNear", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZFar", + "name": "zFar", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Enable Shadow from this light", + "name": "shadowsEnabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Turn on Soft Shadow from this light", + "name": "softShadows", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Shadow Factor (decrease/increase darkness)", + "name": "shadowFactor", + "type": "f" + }, + { + "defaultValue": "0.05", + "group": "", + "help": "[Shadowing] (VSM only) Light bleeding parameter", + "name": "VSMLightBleeding", + "type": "f" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "[Shadowing] (VSM only) Minimum variance parameter", + "name": "VSMMinVariance", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Texture unit for the generated shadow texture", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Fix light position from the camera", + "name": "fixed", + "type": "bool" + }, + { + "defaultValue": "-0.7 0.3 0", + "group": "", + "help": "Set the position of the light", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the attenuation of the light", + "name": "attenuation", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "A positional light illuminating the scene.The light has a location from which the ray are starting in all direction (cannot cast shadows for now)\n" + }, + { + "className": "PostProcessManager", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "PostProcessManager", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualModel" + ], + "shortName": "postProcessManager", + "templateName": "", + "typeName": "PostProcessManager" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set zNear distance (for Depth Buffer)", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Set zFar distance (for Depth Buffer)", + "name": "zFar", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Add a post process pass to the actual rendering.\n" + }, + { + "className": "PrecomputedConstraintCorrection", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "PrecomputedConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection>" + ], + "shortName": "precomputedConstraintCorrection", + "templateName": "Rigid3d", + "typeName": "PrecomputedConstraintCorrection>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Project the precomputed matrix with a rotation matrix", + "name": "rotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "restDeformations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, always recompute the compliance", + "name": "recompute", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale on computed node's frame", + "name": "debugViewFrameScale", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Precomputed compliance matrix data file", + "name": "fileCompliance", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "If not empty, the compliance will be saved in this repertory", + "name": "fileDir", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec1d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "PrecomputedConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<1u,double>,double>>" + ], + "shortName": "precomputedConstraintCorrection", + "templateName": "Vec1d", + "typeName": "PrecomputedConstraintCorrection,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Project the precomputed matrix with a rotation matrix", + "name": "rotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "restDeformations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, always recompute the compliance", + "name": "recompute", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale on computed node's frame", + "name": "debugViewFrameScale", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Precomputed compliance matrix data file", + "name": "fileCompliance", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "If not empty, the compliance will be saved in this repertory", + "name": "fileDir", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "PrecomputedConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<3u,double>,double>>" + ], + "shortName": "precomputedConstraintCorrection", + "templateName": "Vec3d", + "typeName": "PrecomputedConstraintCorrection,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Project the precomputed matrix with a rotation matrix", + "name": "rotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "restDeformations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, always recompute the compliance", + "name": "recompute", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale on computed node's frame", + "name": "debugViewFrameScale", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Precomputed compliance matrix data file", + "name": "fileCompliance", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "If not empty, the compliance will be saved in this repertory", + "name": "fileDir", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + } + }, + "description": "Component precomputing constraint forces within a simulated body using the compliance method. It approximates the compliance matrix by a precomputed matrix inverse. The approximation can be updated based on the rotation of elements.\n" + }, + { + "className": "PrecomputedLinearSolver", + "creator": { + "FullVector": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "PrecomputedLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "precomputedLinearSolver", + "templateName": "FullVector", + "typeName": "PrecomputedLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use two step algorithm to compute JMinvJt", + "name": "jmjt_twostep", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Dump system matrix in a file", + "name": "use_file", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Linear system solver based on a precomputed inverse matrix\n" + }, + { + "className": "PrecomputedMatrixSystem", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "PrecomputedMatrixSystem", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "precomputedMatrixSystem", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "PrecomputedMatrixSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Precomputed matrix system.\n" + }, + { + "className": "PrecomputedWarpPreconditioner", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "PrecomputedWarpPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "precomputedWarpPreconditioner", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "PrecomputedWarpPreconditioner,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use two step algorithm to compute JMinvJt", + "name": "jmjt_twostep", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Dump system matrix in a file", + "name": "use_file", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Share the compliance matrix in memory if they are related to the same file (WARNING: might require to reload Sofa when opening a new scene...)", + "name": "share_matrix", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use Rotations around the preconditioner", + "name": "use_rotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale rotations in draw function", + "name": "draw_rotations_scale", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to precompute the first matrix", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear system solver based on a precomputed inverse matrix, wrapped by a per-node rotation matrix.\n" + }, + { + "className": "PreconditionedMatrixFreeSystem", + "creator": { + "GraphScattered": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "PreconditionedMatrixFreeSystem", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixFreeSystem" + ], + "shortName": "preconditionedMatrixFreeSystem", + "templateName": "GraphScattered", + "typeName": "PreconditionedMatrixFreeSystem" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Rate of update of the preconditioner matrix, in number of time steps or Newton iterations", + "name": "assemblingRate", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "Link toward the linear system of the preconditioner", + "name": "preconditionerSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "A matrix-free linear system that must be used with a preconditioned matrix-free solver\n" + }, + { + "className": "ProjectiveTransformEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ProjectiveTransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "projectiveTransformEngine", + "templateName": "Vec3d", + "typeName": "ProjectiveTransformEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of projected 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "projection matrix", + "name": "proj_mat", + "type": "Mat3x4d" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "focal distance ", + "name": "focal_distance", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Project the position of 3d points onto a plane according to a projection matrix.\n" + }, + { + "className": "ProximityROI", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ProximityROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "proximityROI", + "templateName": "Vec3d", + "typeName": "ProximityROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Maximum number of points to select", + "name": "N", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "distance between the points contained in the ROI and the closest center.", + "name": "distance", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw sphere(s)", + "name": "drawSphere", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the N closest primitives from a given position.\n" + }, + { + "className": "Quad2TriangleTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Quad2TriangleTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "quad2TriangleTopologicalMapping", + "templateName": "", + "typeName": "Quad2TriangleTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where QuadSetTopology is converted to TriangleSetTopology\n" + }, + { + "className": "QuadBendingFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "QuadBendingFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "quadBendingFEMFF", + "templateName": "Vec3d", + "typeName": "QuadBendingFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal quad data", + "name": "quadInfo", + "type": "vector,Vec<3u,double>,double>>QuadInformation,CPUMemoryManager,Vec<3u,double>,double>>QuadInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal point data", + "name": "vertexInfo", + "type": "vector,Vec<3u,double>,double>>VertexInformation,CPUMemoryManager,Vec<3u,double>,double>>VertexInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + }, + { + "defaultValue": "small", + "group": "", + "help": "large: large displacements, small: small displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "Poisson ratio in Hooke's law (vector)", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young modulus in Hooke's law (vector)", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the elements", + "name": "thickness", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Bending Quad finite elements\n" + }, + { + "className": "QuadBendingSprings", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "QuadBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "quadBendingSprings", + "templateName": "Vec2d", + "typeName": "QuadBendingSprings,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "QuadBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "quadBendingSprings", + "templateName": "Vec3d", + "typeName": "QuadBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a quad mesh to prevent bending.\n" + }, + { + "className": "QuadPressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "QuadPressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "quadPressureFF", + "templateName": "Vec3d", + "typeName": "QuadPressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of quads separated with commas where a pressure is applied", + "name": "quadList", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction for the plane selection of quads", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum distance from the origin along the normal direction", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum distance from the origin along the normal direction", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw quads which have a given pressure", + "name": "showForces", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Map between quad indices and their pressure", + "name": "quadPressureMap", + "type": "vector,Vec<3u,double>,double>>QuadPressureInformation,CPUMemoryManager,Vec<3u,double>,double>>QuadPressureInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Pressure applied on a quadrangular geometry.\n" + }, + { + "className": "QuadSetGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "QuadSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "quadSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "QuadSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "QuadSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "quadSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "QuadSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to a quad topology.\n" + }, + { + "className": "QuadSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "QuadSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetTopologyContainer" + ], + "shortName": "quadSetTopologyContainer", + "templateName": "", + "typeName": "QuadSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to a quad topology.\n" + }, + { + "className": "QuadSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "QuadSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetTopologyModifier" + ], + "shortName": "quadSetTopologyModifier", + "templateName": "", + "typeName": "QuadSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to a quad topology.\n" + }, + { + "className": "QuadularBendingSprings", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "QuadularBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "quadularBendingSprings", + "templateName": "Vec3d", + "typeName": "QuadularBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "100000", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a quad mesh to prevent bending.\n" + }, + { + "className": "QuatToRigidEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "QuatToRigidEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "quatToRigidEngine", + "templateName": "Vec3d", + "typeName": "QuatToRigidEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Positions (Vector of 3)", + "name": "positions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Orientations (Quaternion)", + "name": "orientations", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Optional positions to restrict output to be colinear in the quaternion Z direction", + "name": "colinearPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Rigid (Position + Orientation)", + "name": "rigids", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Transform a vector of Rigids into two independent vectors for positions (Vec3) and orientations (Quat).\n" + }, + { + "className": "ROIValueMapper", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "ROIValueMapper", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "rOIValueMapper", + "templateName": "", + "typeName": "ROIValueMapper" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "size of indices/value vector", + "name": "nbROIs", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "New vector of values", + "name": "outputValues", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Default value for indices out of ROIs", + "name": "defaultValue", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Generate a list of values from value-indices pairs.\n" + }, + { + "className": "RandomPointDistributionInSurface", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "RandomPointDistributionInSurface", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "randomPointDistributionInSurface", + "templateName": "Vec3d", + "typeName": "RandomPointDistributionInSurface,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set a specified seed for random generation (0 for \"true pseudo-randomness\" ", + "name": "randomSeed", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "is Visible ?", + "name": "isVisible", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Output points visible ?", + "name": "drawOutputPoints", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "Min Distance between 2 points (-1 for true randomness)", + "name": "minDistanceBetweenPoints", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Number of points inside", + "name": "numberOfInPoints", + "type": "I" + }, + { + "defaultValue": "5", + "group": "", + "help": "Number of tests to find if the point is inside or not (odd number)", + "name": "numberOfTests", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Vertices", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangles indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points inside the surface", + "name": "inPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points outside the surface", + "name": "outPoints", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine distributing points over a surface randomly.\n" + }, + { + "className": "RayCollisionModel", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "RayCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "rayCollisionModel", + "templateName": "", + "typeName": "RayCollisionModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "The default length for all rays in this collision model", + "name": "defaultLength", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model representing a ray in space, e.g. a mouse click\n" + }, + { + "className": "RayTraceDetection", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "RayTraceDetection", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BaseObject" + ], + "shortName": "rayTraceDetection", + "templateName": "", + "typeName": "RayTraceDetection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Collision detection using TriangleOctreeModel.\n" + }, + { + "className": "RayTraceNarrowPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "RayTraceNarrowPhase", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "NarrowPhaseDetection" + ], + "shortName": "rayTraceNarrowPhase", + "templateName": "", + "typeName": "RayTraceNarrowPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Narrow phase of the collision detection using TriangleOctreeModel\n" + }, + { + "className": "ReadState", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "ReadState", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "readState", + "templateName": "", + "typeName": "ReadState" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between inputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Transformation", + "help": "scale the input mechanical object", + "name": "scalePos", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "rotate the input mechanical object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "translate the input mechanical object", + "name": "translation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Read State vectors from file at each timestep.\n" + }, + { + "className": "ReadTopology", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "ReadTopology", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "readTopology", + "templateName": "", + "typeName": "ReadTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "input file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between inputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Read topology containers information from file at each timestep.\n" + }, + { + "className": "RecordedCamera", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "RecordedCamera", + "namespaceName": "sofa::component::visual", + "parents": [ + "BaseCamera" + ], + "shortName": "recordedCamera", + "templateName": "", + "typeName": "RecordedCamera" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's position", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's orientation", + "name": "orientation", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's look at", + "name": "lookAt", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Distance between camera and look at", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "45", + "group": "", + "help": "Camera's FOV", + "name": "fieldOfView", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Camera's zNear", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Camera's zFar", + "name": "zFar", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute Z clip planes (Near and Far) according to the bounding box", + "name": "computeZClip", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "minBBox", + "name": "minBBox", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "maxBBox", + "name": "maxBBox", + "type": "Vec3d" + }, + { + "defaultValue": "800", + "group": "", + "help": "widthViewport", + "name": "widthViewport", + "type": "I" + }, + { + "defaultValue": "600", + "group": "", + "help": "heightViewport", + "name": "heightViewport", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera Type (0 = Perspective, 1 = Orthographic)", + "name": "projectionType", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "", + "help": "Camera activated ?", + "name": "activated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the lookAt point always fixed", + "name": "fixedLookAt", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "250", + "group": "", + "help": "Zoom Speed", + "name": "zoomSpeed", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "Pan Speed", + "name": "panSpeed", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pivot (0 => Scene center, 1 => World Center", + "name": "pivot", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Time when the camera moves will start", + "name": "startTime", + "type": "d" + }, + { + "defaultValue": "200", + "group": "", + "help": "Time when the camera moves will end (or loop)", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, rotation will be performed", + "name": "rotationMode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, translation will be performed", + "name": "translationMode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, navigation will be performed", + "name": "navigationMode", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "rotation Speed", + "name": "rotationSpeed", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Rotation center coordinates", + "name": "rotationCenter", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Rotation start position coordinates", + "name": "rotationStartPoint", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Position to be focused during rotation", + "name": "rotationLookAt", + "type": "Vec3d" + }, + { + "defaultValue": "0 1 0", + "group": "", + "help": "Rotation axis", + "name": "rotationAxis", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Camera Up axis", + "name": "cameraUp", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "If true, will draw the rotation path", + "name": "drawRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "If true, will draw the translation path", + "name": "drawTranslation", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Intermediate camera's positions", + "name": "cameraPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Intermediate camera's orientations", + "name": "cameraOrientations", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "A camera that is moving along a predetermined path.\n" + }, + { + "className": "RegularGridSpringForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RegularGridSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "regularGridSpringFF", + "templateName": "Vec1d", + "typeName": "RegularGridSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Lines Stiffness", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Lines Damping", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Quads Stiffness", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Quads Damping", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Cubes Stiffness", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Cubes Damping", + "name": "cubesDamping", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RegularGridSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "regularGridSpringFF", + "templateName": "Vec2d", + "typeName": "RegularGridSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Lines Stiffness", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Lines Damping", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Quads Stiffness", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Quads Damping", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Cubes Stiffness", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Cubes Damping", + "name": "cubesDamping", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RegularGridSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "regularGridSpringFF", + "templateName": "Vec3d", + "typeName": "RegularGridSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Lines Stiffness", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Lines Damping", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Quads Stiffness", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Quads Damping", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Cubes Stiffness", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Cubes Damping", + "name": "cubesDamping", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RegularGridSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<6u,double>,double>>" + ], + "shortName": "regularGridSpringFF", + "templateName": "Vec6d", + "typeName": "RegularGridSpringForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Lines Stiffness", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Lines Damping", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Quads Stiffness", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Quads Damping", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Cubes Stiffness", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Cubes Damping", + "name": "cubesDamping", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Spring acting on the edges and faces of a regular grid.\n" + }, + { + "className": "RegularGridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "RegularGridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "GridTopology" + ], + "shortName": "regularGridTopology", + "templateName": "", + "typeName": "RegularGridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution. (default = 2 2 2)", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Hexahedra is needed during init (default=true)", + "name": "computeHexaList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Quad is needed during init (default=true)", + "name": "computeQuadList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Triangles is needed during init (default=true)", + "name": "computeTriangleList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Lines is needed during init (default=true)", + "name": "computeEdgeList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Points is needed during init (default=true)", + "name": "computePointList", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, virtual texture coordinates will be generated using 3D interpolation (default=false).", + "name": "createTexCoords", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min end of the diagonal", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Max end of the diagonal", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Offset all the grid points", + "name": "p0", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if > 0 : dimension of each cell in the created grid. Otherwise, the cell size is computed based on min, max, and resolution n.", + "name": "cellWidth", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Regular grid in 3D.\n" + }, + { + "className": "RepulsiveSpringForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RepulsiveSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "repulsiveSpringFF", + "templateName": "Vec1d", + "typeName": "RepulsiveSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RepulsiveSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "repulsiveSpringFF", + "templateName": "Vec2d", + "typeName": "RepulsiveSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RepulsiveSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "repulsiveSpringFF", + "templateName": "Vec3d", + "typeName": "RepulsiveSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs which only repel.\n" + }, + { + "className": "RequiredPlugin", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "RequiredPlugin", + "namespaceName": "sofa::simulation", + "parents": [ + "BaseObject" + ], + "shortName": "requiredPlugin", + "templateName": "", + "typeName": "RequiredPlugin" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "plugin name (or several names if you need to load different plugins or a plugin with several alternate names)", + "name": "pluginName", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "standard->custom suffixes pairs (to be used if the plugin is compiled outside of Sofa with a non standard way of differentiating versions), using ! to represent empty suffix", + "name": "suffixMap", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stop after the first plugin name that is loaded successfully", + "name": "stopAfterFirstNameFound", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "For each plugin name, stop after the first suffix that is loaded successfully", + "name": "stopAfterFirstSuffixFound", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display an error message if no plugin names were successfully loaded", + "name": "requireOne", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display an error message if any plugin names failed to be loaded", + "name": "requireAll", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of the plugins that are have been loaded.", + "name": "loadedPlugins", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Simulation.Core" + } + }, + "description": "Load the SOFA modules and/or plugins required to run a simulation.\n" + }, + { + "className": "RestShapeSpringsForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "RestShapeSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField>" + ], + "shortName": "restShapeSpringsFF", + "templateName": "Rigid3d", + "typeName": "RestShapeSpringsForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points controlled by the rest shape springs", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "stiffness values between the actual position and the rest shape position", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angularStiffness assigned when controlling the rotation of the points", + "name": "angularStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "global pivot points used when translations instead of the rigid mass centers", + "name": "pivot_points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points from the external Mechanical State that define the rest shape springs", + "name": "external_points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color. (default=[0.0,1.0,0.0,1.0])", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "1 1 1 1 1 1 1", + "group": "", + "help": "Directions in which the spring is active (default=[1,1,1,1,1,1,1])", + "name": "activeDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "MechanicalState", + "help": "rest_shape can be defined by the position of an external Mechanical State", + "name": "external_rest_shape" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to be set to the topology container in the component graph", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "RestShapeSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "restShapeSpringsFF", + "templateName": "Vec1d", + "typeName": "RestShapeSpringsForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points controlled by the rest shape springs", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "stiffness values between the actual position and the rest shape position", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angularStiffness assigned when controlling the rotation of the points", + "name": "angularStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "global pivot points used when translations instead of the rigid mass centers", + "name": "pivot_points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points from the external Mechanical State that define the rest shape springs", + "name": "external_points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color. (default=[0.0,1.0,0.0,1.0])", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Directions in which the spring is active (default=[1])", + "name": "activeDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "MechanicalState", + "help": "rest_shape can be defined by the position of an external Mechanical State", + "name": "external_rest_shape" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to be set to the topology container in the component graph", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "RestShapeSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "restShapeSpringsFF", + "templateName": "Vec3d", + "typeName": "RestShapeSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points controlled by the rest shape springs", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "stiffness values between the actual position and the rest shape position", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angularStiffness assigned when controlling the rotation of the points", + "name": "angularStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "global pivot points used when translations instead of the rigid mass centers", + "name": "pivot_points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points from the external Mechanical State that define the rest shape springs", + "name": "external_points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color. (default=[0.0,1.0,0.0,1.0])", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Directions in which the spring is active (default=[1,1,1])", + "name": "activeDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "MechanicalState", + "help": "rest_shape can be defined by the position of an external Mechanical State", + "name": "external_rest_shape" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to be set to the topology container in the component graph", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Elastic springs generating forces on degrees of freedom between their current and rest shape position.\n" + }, + { + "className": "RigidMapping", + "creator": { + "Rigid2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "RigidMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "Mapping,StdVectorTypes,Vec<2u,double>,double>>" + ], + "shortName": "rigidMap", + "templateName": "Rigid2d,Vec2d", + "typeName": "RigidMapping,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Local Coordinates of the points", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index", + "name": "index", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp file where rigid mapping information can be loaded from.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use x0 instead of local copy of initial positions (to support topo changes)", + "name": "useX0", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index starts from the end of input DOFs vector", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "For each mapped point, the index of the Rigid it is mapped from", + "name": "rigidIndexPerPoint", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "are the output DOFs initially expressed in global coordinates", + "name": "globalToLocalCoords", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "RigidMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "Mapping,StdRigidTypes<3u,double>>" + ], + "shortName": "rigidMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "RigidMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Local Coordinates of the points", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index", + "name": "index", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp file where rigid mapping information can be loaded from.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use x0 instead of local copy of initial positions (to support topo changes)", + "name": "useX0", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index starts from the end of input DOFs vector", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "For each mapped point, the index of the Rigid it is mapped from", + "name": "rigidIndexPerPoint", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "are the output DOFs initially expressed in global coordinates", + "name": "globalToLocalCoords", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "RigidMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "Mapping,StdVectorTypes,Vec<3u,double>,double>>" + ], + "shortName": "rigidMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "RigidMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Local Coordinates of the points", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index", + "name": "index", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp file where rigid mapping information can be loaded from.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use x0 instead of local copy of initial positions (to support topo changes)", + "name": "useX0", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index starts from the end of input DOFs vector", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "For each mapped point, the index of the Rigid it is mapped from", + "name": "rigidIndexPerPoint", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "are the output DOFs initially expressed in global coordinates", + "name": "globalToLocalCoords", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Set the positions and velocities of points attached to a rigid parent.\n" + }, + { + "className": "RigidToQuatEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "RigidToQuatEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "rigidToQuatEngine", + "templateName": "Vec3d", + "typeName": "RigidToQuatEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Positions (Vector of 3)", + "name": "positions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Orientations (Quaternion)", + "name": "orientations", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Orientations (Euler angle)", + "name": "orientationsEuler", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rigid (Position + Orientation)", + "name": "rigids", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Transform a couple of Vec3 and Quaternion in Rigid.\n" + }, + { + "className": "RotateTransformMatrixEngine", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "RotateTransformMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "AbstractTransformMatrixEngine" + ], + "shortName": "rotateTransformMatrixEngine", + "templateName": "", + "typeName": "RotateTransformMatrixEngine" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "input transformation if any", + "name": "inT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output transformation", + "name": "outT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "", + "help": "euler angles", + "name": "rotation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Compose the input transform (if any) with the given rotation.\n" + }, + { + "className": "RotationMatrixSystem", + "creator": { + "RotationMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "RotationMatrixSystem", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "rotationMatrixSystem", + "templateName": "RotationMatrixd", + "typeName": "RotationMatrixSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Rate of update of the preconditioner matrix", + "name": "assemblingRate", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "Main assembled linear system that will be warped", + "name": "mainSystem" + }, + { + "destinationTypeName": "BaseRotationFinder", + "help": "Link toward the rotation finder used to compute the rotation matrix", + "name": "rotationFinder" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Rotation matrix warping the main linear system.\n" + }, + { + "className": "RuleBasedContactManager", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "RuleBasedContactManager", + "namespaceName": "sofa::component::collision::response::contact", + "parents": [ + "CollisionResponse" + ], + "shortName": "ruleBasedContactManager", + "templateName": "", + "typeName": "RuleBasedContactManager" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "contact response class", + "name": "response", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "contact response parameters (syntax: name1=value1&name2=value2&...)", + "name": "responseParams", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Define a list of variables to be used inside the rules", + "name": "variables", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Ordered list of rules, each with a triplet of strings.\nThe first two define either the name of the collision model, its group number, or * meaning any model.\nThe last string define the response algorithm to use for contacts matched by this rule.\nRules are applied in the order they are specified. If none match a given contact, the default response is used.\n", + "name": "rules", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Response.Contact" + } + }, + "description": "Create different response to the collisions based on a set of rules.\n" + }, + { + "className": "RungeKutta2Solver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "RungeKutta2Solver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "rungeKutta2Solver", + "templateName": "", + "typeName": "RungeKutta2Solver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "A popular explicit time integrator.\n" + }, + { + "className": "RungeKutta4Solver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "RungeKutta4Solver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "rungeKutta4Solver", + "templateName": "", + "typeName": "RungeKutta4Solver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "A popular explicit time integrator.\n" + }, + { + "className": "SSORPreconditioner", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SSORPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "sSORPreconditioner", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "SSORPreconditioner,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Omega coefficient", + "name": "omega", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SSORPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "sSORPreconditioner", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "SSORPreconditioner,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Omega coefficient", + "name": "omega", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear system solver / preconditioner based on Symmetric Successive Over-Relaxation (SSOR). If the matrix is decomposed as $A = D + L + L^T$, this solver computes $(1/(2-w))(D/w+L)(D/w)^{-1}(D/w+L)^T x = b, or $(D+L)D^{-1}(D+L)^T x = b$ if $w=1$.\n" + }, + { + "className": "STLExporter", + "creator": { + "": { + "class": { + "categories": [ + "Exporter" + ], + "className": "STLExporter", + "namespaceName": "sofa::component::_stlexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "sTLExporter", + "templateName": "", + "typeName": "STLExporter" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "if true, save in binary format, otherwise in ascii", + "name": "binaryformat", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "points coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "triangles indices", + "name": "triangle", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "quads indices", + "name": "quad", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Save a topology in file.\n" + }, + { + "className": "SVDLinearSolver", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SVDLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "sVDLinearSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "SVDLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump system state at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1e-06", + "group": "", + "help": "Thershold under which a singular value is set to 0, for the stabilization of ill-conditioned system.", + "name": "minSingularValue", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Condition number of the matrix: ratio between the largest and smallest singular values. Computed in method solve.", + "name": "conditionNumber", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SVDLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "sVDLinearSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "SVDLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump system state at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1e-06", + "group": "", + "help": "Thershold under which a singular value is set to 0, for the stabilization of ill-conditioned system.", + "name": "minSingularValue", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Condition number of the matrix: ratio between the largest and smallest singular values. Computed in method solve.", + "name": "conditionNumber", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SVDLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "sVDLinearSolver", + "templateName": "FullMatrix", + "typeName": "SVDLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump system state at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1e-06", + "group": "", + "help": "Thershold under which a singular value is set to 0, for the stabilization of ill-conditioned system.", + "name": "minSingularValue", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Condition number of the matrix: ratio between the largest and smallest singular values. Computed in method solve.", + "name": "conditionNumber", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Linear system solver using a SVD decomposition of a dense matrix.\n" + }, + { + "className": "ScaleTransformMatrixEngine", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "ScaleTransformMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "AbstractTransformMatrixEngine" + ], + "shortName": "scaleTransformMatrixEngine", + "templateName": "", + "typeName": "ScaleTransformMatrixEngine" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "input transformation if any", + "name": "inT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output transformation", + "name": "outT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "", + "help": "scaling values", + "name": "scale", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Compose the input transform (if any) with the given scale transformation.\n" + }, + { + "className": "SelectConnectedLabelsROI", + "creator": { + "B": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectConnectedLabelsROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectConnectedLabelsROI", + "templateName": "B", + "typeName": "SelectConnectedLabelsROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of label lists", + "name": "nbLabels", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Pairs of label to be connected across different label lists", + "name": "connectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "H": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectConnectedLabelsROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectConnectedLabelsROI", + "templateName": "H", + "typeName": "SelectConnectedLabelsROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of label lists", + "name": "nbLabels", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Pairs of label to be connected across different label lists", + "name": "connectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectConnectedLabelsROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectConnectedLabelsROI", + "templateName": "I", + "typeName": "SelectConnectedLabelsROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of label lists", + "name": "nbLabels", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Pairs of label to be connected across different label lists", + "name": "connectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectConnectedLabelsROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectConnectedLabelsROI", + "templateName": "i", + "typeName": "SelectConnectedLabelsROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of label lists", + "name": "nbLabels", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Pairs of label to be connected across different label lists", + "name": "connectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Select a subset of points or cells labeled from different sources, that are connected given a list of connection pairs.\n" + }, + { + "className": "SelectLabelROI", + "creator": { + "B": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectLabelROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectLabelROI", + "templateName": "B", + "typeName": "SelectLabelROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "lists of labels associated to each point/cell", + "name": "labels", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "list of selected labels", + "name": "selectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "H": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectLabelROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectLabelROI", + "templateName": "H", + "typeName": "SelectLabelROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "lists of labels associated to each point/cell", + "name": "labels", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "list of selected labels", + "name": "selectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectLabelROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectLabelROI", + "templateName": "I", + "typeName": "SelectLabelROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "lists of labels associated to each point/cell", + "name": "labels", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "list of selected labels", + "name": "selectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectLabelROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectLabelROI", + "templateName": "i", + "typeName": "SelectLabelROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "lists of labels associated to each point/cell", + "name": "labels", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "list of selected labels", + "name": "selectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Select a subset of labeled points or cells stored in (vector>) given certain labels.\n" + }, + { + "className": "ShapeMatching", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ShapeMatching", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "shapeMatching", + "templateName": "Rigid3d", + "typeName": "ShapeMatching>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of iterations.", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Blending between affine and rigid.", + "name": "affineRatio", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "weight of fixed particles.", + "name": "fixedweight", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "rest positions of non mechanical particles.", + "name": "fixedPosition0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "current (fixed) positions of non mechanical particles.", + "name": "fixedPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input clusters.", + "name": "cluster", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed target positions.", + "name": "targetPosition", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ShapeMatching", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "shapeMatching", + "templateName": "Vec3d", + "typeName": "ShapeMatching,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of iterations.", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Blending between affine and rigid.", + "name": "affineRatio", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "weight of fixed particles.", + "name": "fixedweight", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "rest positions of non mechanical particles.", + "name": "fixedPosition0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "current (fixed) positions of non mechanical particles.", + "name": "fixedPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input clusters.", + "name": "cluster", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed target positions.", + "name": "targetPosition", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Compute target positions using shape matching deformation method by Mueller et al.\n" + }, + { + "className": "SimpleTesselatedHexaTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "SimpleTesselatedHexaTopologicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "TopologicalMapping" + ], + "shortName": "simpleTesselatedHexaTopologicalMapping", + "templateName": "", + "typeName": "SimpleTesselatedHexaTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Special case of mapping where HexahedronSetTopology is converted into a finer HexahedronSetTopology.\n" + }, + { + "className": "SimpleTesselatedTetraMechanicalMapping", + "creator": { + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SimpleTesselatedTetraMechanicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "simpleTesselatedTetraMechanicalMap", + "templateName": "Vec3d,Vec3d", + "typeName": "SimpleTesselatedTetraMechanicalMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Mechanical mapping between two TetrahedronSetTopologies generated by SimpleTesselatedTetraTopologicalMapping.\n" + }, + { + "className": "SimpleTesselatedTetraTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "SimpleTesselatedTetraTopologicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "TopologicalMapping" + ], + "shortName": "simpleTesselatedTetraTopologicalMapping", + "templateName": "", + "typeName": "SimpleTesselatedTetraTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Each Tetrahedron of the input topology is mapped to the 8 tetrahedrons in which it can be divided", + "name": "tetrahedraMappedFromTetra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Which tetra from the input topology map to a given tetra in the output topology (sofa::InvalidID if none)", + "name": "tetraSource", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Each point of the input topology is mapped to the same point", + "name": "pointMappedFromPoint", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Each edge of the input topology is mapped to his midpoint", + "name": "pointMappedFromEdge", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Which input topology element map to a given point in the output topology : 0 -> none, > 0 -> point index + 1, < 0 , - edge index -1", + "name": "pointSource", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Special case of mapping where TetrahedronSetTopology is converted into a finer TetrahedronSetTopology.\n" + }, + { + "className": "SkeletalMotionProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "SkeletalMotionProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "skeletalMotionProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "SkeletalMotionProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "skeleton joints", + "name": "joints", + "type": "SVector>>" + }, + { + "defaultValue": "", + "group": "", + "help": "skeleton bones", + "name": "bones", + "type": "SVector" + }, + { + "defaultValue": "1", + "group": "", + "help": "animation speed", + "name": "animationSpeed", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "is the constraint active?", + "name": "active", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Animate a skeleton.\n" + }, + { + "className": "SkinningMapping", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SkinningMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "skinningMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "SkinningMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "initial child coordinates in the world reference frame.", + "name": "initPos", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Number of primitives influencing each point.", + "name": "nbRef", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "parent indices for each child.", + "name": "indices", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "influence weights of the Dofs.", + "name": "weight", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Displayed From Index.", + "name": "showFromIndex", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show influence.", + "name": "showWeights", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Skin a model from a set of rigid DOFs.\n" + }, + { + "className": "SlicedVolumetricModel", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "SlicedVolumetricModel", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel" + ], + "shortName": "slicedVolumetricModel", + "templateName": "", + "typeName": "SlicedVolumetricModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "0.2", + "group": "", + "help": "Opacity of the billboards. 1.0 is 100% opaque.", + "name": "alpha", + "type": "f" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Billboard color.(default=1.0,1.0,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "100", + "group": "", + "help": "Number of billboards.", + "name": "nbSlices", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Sliced visualization for a volumetric model defined with hexahedra.\n" + }, + { + "className": "SlidingLagrangianConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "SlidingLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "PairInteractionConstraint>" + ], + "shortName": "slidingLagrangianConstraint", + "templateName": "Rigid3d", + "typeName": "SlidingLagrangianConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the spliding point on the first model", + "name": "sliding_point", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of one end of the sliding axis", + "name": "axis_1", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the other end of the sliding axis", + "name": "axis_2", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "force (impulse) used to solve the constraint", + "name": "force", + "type": "RigidDeriv3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "SlidingLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "PairInteractionConstraint,Vec<3u,double>,double>>" + ], + "shortName": "slidingLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "SlidingLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the spliding point on the first model", + "name": "sliding_point", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of one end of the sliding axis", + "name": "axis_1", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the other end of the sliding axis", + "name": "axis_2", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "force (impulse) used to solve the constraint", + "name": "force", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "Lagrangian-based partial fixation of DOFs of the model, along an axis.\n" + }, + { + "className": "SmoothMeshEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SmoothMeshEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "smoothMeshEngine", + "templateName": "Vec3d", + "typeName": "SmoothMeshEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input position", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Position indices that need to be smoothed, leave empty for all positions", + "name": "input_indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output position", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of iterations of laplacian smoothing", + "name": "nb_iterations", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "showInput", + "name": "showInput", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "showOutput", + "name": "showOutput", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Compute the laplacian smoothing of a mesh.\n" + }, + { + "className": "SofaDefaultPathSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "SofaDefaultPathSetting", + "namespaceName": "sofa::component::setting", + "parents": [ + "ConfigurationSetting" + ], + "shortName": "sofaDefaultPathSetting", + "templateName": "", + "typeName": "SofaDefaultPathSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path where will be saved the gnuplot files", + "name": "gnuplotPath", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Setting" + } + }, + "description": "Default Paths for Sofa Application.\n" + }, + { + "className": "SparseGridMultipleTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SparseGridMultipleTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "SparseGridRamificationTopology" + ], + "shortName": "sparseGridMultipleTopology", + "templateName": "", + "typeName": "SparseGridMultipleTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Is quantity of matter inside a cell taken into account? (.5 for boundary, 1 for inside)", + "name": "fillWeighted", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Select only inside cells (exclude boundary cells)", + "name": "onlyInsideCells", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if > 0 : dimension of each cell in the created grid", + "name": "cellWidth", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "create virtual (not in the animation tree) finer sparse grids in order to dispose of finest information (useful to compute better mechanical properties for example)", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Dimension of the voxel File", + "name": "dataResolution", + "type": "Vec3i" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Dimension of one voxel", + "name": "voxelSize", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Step of the Marching Cube algorithm", + "name": "marchingCubeStep", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dimension of the convolution kernel to smooth the voxels. 0 if no smoothing is required.", + "name": "convolutionSize", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Input mesh facets", + "name": "facets", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Test for connectivity at the finest level? (more precise but slower by testing all intersections between the model mesh and the faces between boundary cubes)", + "name": "finestConnectivity", + "type": "bool" + }, + { + "defaultValue": "[]", + "group": "", + "help": "All topology filenames", + "name": "fileTopologies", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "A stiffness coefficient for each topology filename", + "name": "stiffnessCoefs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "A mass coefficient for each topology filename", + "name": "massCoefs", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are ramifications wanted?", + "name": "computeRamifications", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does a new stiffness/mass coefficient replace the previous or blend half/half with it?", + "name": "erasePreviousCoef", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Sparse grid in 3D.\n" + }, + { + "className": "SparseGridRamificationTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SparseGridRamificationTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "SparseGridTopology" + ], + "shortName": "sparseGridRamificationTopology", + "templateName": "", + "typeName": "SparseGridRamificationTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Is quantity of matter inside a cell taken into account? (.5 for boundary, 1 for inside)", + "name": "fillWeighted", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Select only inside cells (exclude boundary cells)", + "name": "onlyInsideCells", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if > 0 : dimension of each cell in the created grid", + "name": "cellWidth", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "create virtual (not in the animation tree) finer sparse grids in order to dispose of finest information (useful to compute better mechanical properties for example)", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Dimension of the voxel File", + "name": "dataResolution", + "type": "Vec3i" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Dimension of one voxel", + "name": "voxelSize", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Step of the Marching Cube algorithm", + "name": "marchingCubeStep", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dimension of the convolution kernel to smooth the voxels. 0 if no smoothing is required.", + "name": "convolutionSize", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Input mesh facets", + "name": "facets", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Test for connectivity at the finest level? (more precise but slower by testing all intersections between the model mesh and the faces between boundary cubes)", + "name": "finestConnectivity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Sparse grid in 3D (modified).\n" + }, + { + "className": "SparseGridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SparseGridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "MeshTopology" + ], + "shortName": "sparseGridTopology", + "templateName": "", + "typeName": "SparseGridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Is quantity of matter inside a cell taken into account? (.5 for boundary, 1 for inside)", + "name": "fillWeighted", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Select only inside cells (exclude boundary cells)", + "name": "onlyInsideCells", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if > 0 : dimension of each cell in the created grid", + "name": "cellWidth", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "create virtual (not in the animation tree) finer sparse grids in order to dispose of finest information (useful to compute better mechanical properties for example)", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Dimension of the voxel File", + "name": "dataResolution", + "type": "Vec3i" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Dimension of one voxel", + "name": "voxelSize", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Step of the Marching Cube algorithm", + "name": "marchingCubeStep", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dimension of the convolution kernel to smooth the voxels. 0 if no smoothing is required.", + "name": "convolutionSize", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Input mesh facets", + "name": "facets", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Sparse grid in 3D.\n" + }, + { + "className": "SparseLDLSolver", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SparseLDLSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "SparseLDLSolverImpl,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "sparseLDLSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "SparseLDLSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the solver will reuse the precomputed symbolic decomposition, meaning that it will store the shape of [factor matrix] on the first step, or when its shape changes, and then it will only update its coefficients. When the shape of the matrix changes, a new factorization is computed.If false, the solver will compute the entire decomposition at each step", + "name": "precomputeSymbolicDecomposition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of non-zero values in the lower triangular matrix of the factorization. The lower, the faster the system is solved.", + "name": "L_nnz", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SparseLDLSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "SparseLDLSolverImpl,FullVector,NoThreadManager>" + ], + "shortName": "sparseLDLSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "SparseLDLSolver,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the solver will reuse the precomputed symbolic decomposition, meaning that it will store the shape of [factor matrix] on the first step, or when its shape changes, and then it will only update its coefficients. When the shape of the matrix changes, a new factorization is computed.If false, the solver will compute the entire decomposition at each step", + "name": "precomputeSymbolicDecomposition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of non-zero values in the lower triangular matrix of the factorization. The lower, the faster the system is solved.", + "name": "L_nnz", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse LDL^T factorization.\n" + }, + { + "className": "SphereCollisionModel", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "SphereCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "sphereCollisionModel", + "templateName": "Rigid3d", + "typeName": "SphereCollisionModel>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of each sphere", + "name": "listRadius", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Draw spheres as impostors instead of \"real\" spheres", + "name": "showImpostors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + }, + "Vec3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "SphereCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "sphereCollisionModel", + "templateName": "Vec3d", + "typeName": "SphereCollisionModel,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of each sphere", + "name": "listRadius", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Draw spheres as impostors instead of \"real\" spheres", + "name": "showImpostors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model which represents a set of Spheres.\n" + }, + { + "className": "SphereForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SphereForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "sphereFF", + "templateName": "Vec1d", + "typeName": "SphereForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Contacts", + "name": "contacts", + "type": "vector,Vec<1u,double>,double>>Contact,CPUMemoryManager,Vec<1u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "sphere center", + "name": "center", + "type": "Vec1d" + }, + { + "defaultValue": "1", + "group": "", + "help": "sphere radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0 1 1", + "group": "", + "help": "sphere color. (default=[0,0,1,1])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the sphere force field is applied on both sides", + "name": "bilateral", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SphereForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "sphereFF", + "templateName": "Vec2d", + "typeName": "SphereForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Contacts", + "name": "contacts", + "type": "vector,Vec<2u,double>,double>>Contact,CPUMemoryManager,Vec<2u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "sphere center", + "name": "center", + "type": "Vec2d" + }, + { + "defaultValue": "1", + "group": "", + "help": "sphere radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0 1 1", + "group": "", + "help": "sphere color. (default=[0,0,1,1])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the sphere force field is applied on both sides", + "name": "bilateral", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SphereForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "sphereFF", + "templateName": "Vec3d", + "typeName": "SphereForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Contacts", + "name": "contacts", + "type": "vector,Vec<3u,double>,double>>Contact,CPUMemoryManager,Vec<3u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "sphere center", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "sphere radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0 1 1", + "group": "", + "help": "sphere color. (default=[0,0,1,1])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the sphere force field is applied on both sides", + "name": "bilateral", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Outward repulsion applied by a sphere geometry\n" + }, + { + "className": "SphereGridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SphereGridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "GridTopology" + ], + "shortName": "sphereGridTopology", + "templateName": "", + "typeName": "SphereGridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution. (default = 2 2 2)", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Hexahedra is needed during init (default=true)", + "name": "computeHexaList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Quad is needed during init (default=true)", + "name": "computeQuadList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Triangles is needed during init (default=true)", + "name": "computeTriangleList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Lines is needed during init (default=true)", + "name": "computeEdgeList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Points is needed during init (default=true)", + "name": "computePointList", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, virtual texture coordinates will be generated using 3D interpolation (default=false).", + "name": "createTexCoords", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Center of the cylinder", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 1", + "group": "", + "help": "Main direction of the cylinder", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of the cylinder", + "name": "radius", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Sphere grid in 3D.\n" + }, + { + "className": "SphereLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "SphereLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "BaseLoader" + ], + "shortName": "sphereLoader", + "templateName": "", + "typeName": "SphereLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Sphere centers", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of each sphere", + "name": "listRadius", + "type": "vector" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale applied to sphere positions & radius", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation applied to sphere positions", + "name": "translation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Loader for sphere model description files.\n" + }, + { + "className": "SphereQuadTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SphereQuadTopology", + "namespaceName": "sofa::component::topology::container::constant", + "parents": [ + "CubeTopology" + ], + "shortName": "sphereQuadTopology", + "templateName": "", + "typeName": "SphereQuadTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "x grid resolution", + "name": "nx", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "y grid resolution", + "name": "ny", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "z grid resolution", + "name": "nz", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "include internal points (allow a one-to-one mapping between points from RegularGridTopology and CubeTopology)", + "name": "internalPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "split corner points to have planar normals", + "name": "splitNormals", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Center of the sphere", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Radius of the sphere", + "name": "radius", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Constant" + } + }, + "description": "Sphere topology constructed with deformed quads.\n" + }, + { + "className": "SphereROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SphereROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI>" + ], + "shortName": "sphereROI", + "templateName": "Rigid3d", + "typeName": "SphereROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge direction(if edgeAngle > 0)", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction of the triangles (if triAngle > 0)", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the direction of the selected edges and the specified direction", + "name": "edgeAngle", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the normal of the selected triangle and the specified normal direction", + "name": "triAngle", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SphereROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI,Vec<3u,double>,double>>" + ], + "shortName": "sphereROI", + "templateName": "Vec3d", + "typeName": "SphereROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge direction(if edgeAngle > 0)", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction of the triangles (if triAngle > 0)", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the direction of the selected edges and the specified direction", + "name": "edgeAngle", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the normal of the selected triangle and the specified normal direction", + "name": "triAngle", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine selecting the primitives (vertex/edge/triangle/tetrahedron) inside a given sphere.\n" + }, + { + "className": "Spiral", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "Spiral", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "spiral", + "templateName": "Vec3d", + "typeName": "Spiral,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0.2", + "group": "", + "help": "Spiral curvature factor", + "name": "curvature", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine turning on spiral any topological model.\n" + }, + { + "className": "SpotLight", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "SpotLight", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "PositionalLight" + ], + "shortName": "spotLight", + "templateName": "", + "typeName": "SpotLight" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Set the color of the light. (default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Set size for shadow texture ", + "name": "shadowTextureSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Light Source", + "name": "drawSource", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZNear", + "name": "zNear", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZFar", + "name": "zFar", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Enable Shadow from this light", + "name": "shadowsEnabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Turn on Soft Shadow from this light", + "name": "softShadows", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Shadow Factor (decrease/increase darkness)", + "name": "shadowFactor", + "type": "f" + }, + { + "defaultValue": "0.05", + "group": "", + "help": "[Shadowing] (VSM only) Light bleeding parameter", + "name": "VSMLightBleeding", + "type": "f" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "[Shadowing] (VSM only) Minimum variance parameter", + "name": "VSMMinVariance", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Texture unit for the generated shadow texture", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Fix light position from the camera", + "name": "fixed", + "type": "bool" + }, + { + "defaultValue": "-0.7 0.3 0", + "group": "", + "help": "Set the position of the light", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the attenuation of the light", + "name": "attenuation", + "type": "f" + }, + { + "defaultValue": "0 0 -1", + "group": "", + "help": "Set the direction of the light", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "30", + "group": "", + "help": "Set the angle (cutoff) of the spot", + "name": "cutoff", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set the exponent of the spot", + "name": "exponent", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, direction specify the point at which the spotlight should be pointed to", + "name": "lookat", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "A spot light illuminating the scene.The light has a location and a illumination cone restricting the directionstaken by the rays of light (can cast shadows).\n" + }, + { + "className": "SpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField>" + ], + "shortName": "springFF", + "templateName": "Rigid3d", + "typeName": "SpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<1u,double>,double>>" + ], + "shortName": "springFF", + "templateName": "Vec1d", + "typeName": "SpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<2u,double>,double>>" + ], + "shortName": "springFF", + "templateName": "Vec2d", + "typeName": "SpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<3u,double>,double>>" + ], + "shortName": "springFF", + "templateName": "Vec3d", + "typeName": "SpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<6u,double>,double>>" + ], + "shortName": "springFF", + "templateName": "Vec6d", + "typeName": "SpringForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs.\n" + }, + { + "className": "SquareDistanceMapping", + "creator": { + "Rigid3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SquareDistanceMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "squareDistanceMap", + "templateName": "Rigid3d,Vec1d", + "typeName": "SquareDistanceMapping,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SquareDistanceMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "squareDistanceMap", + "templateName": "Vec3d,Vec1d", + "typeName": "SquareDistanceMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping point positions to square distances.\n" + }, + { + "className": "SquareMapping", + "creator": { + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SquareMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,false>" + ], + "shortName": "squareMap", + "templateName": "Vec1d,Vec1d", + "typeName": "SquareMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Exact", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed", + "name": "geometricStiffness", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Compute the square value from the inputs.\n" + }, + { + "className": "StandardTetrahedralFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "StandardTetrahedralFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::hyperelastic", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "standardTetrahedralFEMFF", + "templateName": "Vec3d", + "typeName": "StandardTetrahedralFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "ArrudaBoyce", + "group": "", + "help": "the name of the material to be used", + "name": "materialName", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "The global parameters specifying the material", + "name": "ParameterSet", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The global directions of anisotropy of the material", + "name": "AnisotropyDirections", + "type": "vector" + }, + { + "defaultValue": "myFile.param", + "group": "", + "help": "the name of the file describing the material parameters for all tetrahedra", + "name": "ParameterFile", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal tetrahedron data", + "name": "tetrahedronInfo", + "type": "vector,Vec<3u,double>,double>>TetrahedronRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TetrahedronRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.HyperElastic" + } + }, + "description": "Generic Tetrahedral finite elements.\n" + }, + { + "className": "StartNavigationButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "StartNavigationButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "startNavigationButtonSetting", + "templateName": "", + "typeName": "StartNavigationButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Start Navigation Button configuration.\n" + }, + { + "className": "StaticSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "StaticSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "OdeSolver", + "LinearSolverAccessor" + ], + "shortName": "staticSolver", + "templateName": "", + "typeName": "StaticSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + }, + { + "destinationTypeName": "NewtonRaphsonSolver", + "help": "Link to a NewtonRaphsonSolver", + "name": "newtonSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Static ODE Solver\n" + }, + { + "className": "StatsSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "StatsSetting", + "namespaceName": "sofa::component::setting", + "parents": [ + "ConfigurationSetting" + ], + "shortName": "statsSetting", + "templateName": "", + "typeName": "StatsSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump state vectors at each time step of the simulation", + "name": "dumpState", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Output in the console an average of the time spent during different stages of the simulation", + "name": "logTime", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Create GNUPLOT files with the positions, velocities and forces of all the simulated objects of the scene", + "name": "exportState", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Setting" + } + }, + "description": "Stats settings.\n" + }, + { + "className": "StopperLagrangianConstraint", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "StopperLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<1u,double>,double>>" + ], + "shortName": "stopperLagrangianConstraint", + "templateName": "Vec1d", + "typeName": "StopperLagrangianConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the stop constraint", + "name": "index", + "type": "i" + }, + { + "defaultValue": "-100", + "group": "", + "help": "minimum value accepted", + "name": "min", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "maximum value accepted", + "name": "max", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "Lagrangian-based constraint forcing a 1D DoF to be inside a given range.\n" + }, + { + "className": "StringMeshCreator", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "StringMeshCreator", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "stringMeshCreator", + "templateName": "", + "typeName": "StringMeshCreator" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of vertices", + "name": "resolution", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Procedural creation of a one-dimensional mesh.\n" + }, + { + "className": "SubsetMapping", + "creator": { + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "subsetMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "SubsetMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input indices", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "first index (use if indices are sequential)", + "name": "first", + "type": "I" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "last index (use if indices are sequential)", + "name": "last", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "search radius to find corresponding points in case no indices are given", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable support of topological changes for indices (disable if it is linked from SubsetTopologicalMapping::pointD2S)", + "name": "handleTopologyChange", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to ignore points that are not found in the input model, they will be treated as fixed points", + "name": "ignoreNotFound", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to resize the output MechanicalState to match the size of indices", + "name": "resizeToModel", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "subsetMap", + "templateName": "Vec1d,Vec1d", + "typeName": "SubsetMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input indices", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "first index (use if indices are sequential)", + "name": "first", + "type": "I" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "last index (use if indices are sequential)", + "name": "last", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "search radius to find corresponding points in case no indices are given", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable support of topological changes for indices (disable if it is linked from SubsetTopologicalMapping::pointD2S)", + "name": "handleTopologyChange", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to ignore points that are not found in the input model, they will be treated as fixed points", + "name": "ignoreNotFound", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to resize the output MechanicalState to match the size of indices", + "name": "resizeToModel", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "subsetMap", + "templateName": "Vec3d,Vec3d", + "typeName": "SubsetMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input indices", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "first index (use if indices are sequential)", + "name": "first", + "type": "I" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "last index (use if indices are sequential)", + "name": "last", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "search radius to find corresponding points in case no indices are given", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable support of topological changes for indices (disable if it is linked from SubsetTopologicalMapping::pointD2S)", + "name": "handleTopologyChange", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to ignore points that are not found in the input model, they will be treated as fixed points", + "name": "ignoreNotFound", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to resize the output MechanicalState to match the size of indices", + "name": "resizeToModel", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Compute a subset of input DOFs.\n" + }, + { + "className": "SubsetMultiMapping", + "creator": { + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "SubsetMultiMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "SubsetMultiMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Vec1d,Vec1d", + "typeName": "SubsetMultiMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Vec2d,Vec2d", + "typeName": "SubsetMultiMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Vec3d,Vec3d", + "typeName": "SubsetMultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Compute a subset of the input MechanicalObjects according to a dof index list.\n" + }, + { + "className": "SubsetTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "SubsetTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "subsetTopologicalMapping", + "templateName": "", + "typeName": "SubsetTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if the same set of points is used in both topologies", + "name": "samePoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if edges events and mapping should be handled", + "name": "handleEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if triangles events and mapping should be handled", + "name": "handleTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if quads events and mapping should be handled", + "name": "handleQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tetrahedra events and mapping should be handled", + "name": "handleTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if hexahedra events and mapping should be handled", + "name": "handleHexahedra", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology points map", + "name": "pointS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology points map (link to SubsetMapping::indices to handle the mechanical-side of the mapping", + "name": "pointD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology edges map", + "name": "edgeS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology edges map", + "name": "edgeD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology triangles map", + "name": "triangleS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology triangles map", + "name": "triangleD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology quads map", + "name": "quadS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology quads map", + "name": "quadD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology tetrahedra map", + "name": "tetrahedronS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology tetrahedra map", + "name": "tetrahedronD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology hexahedra map", + "name": "hexahedronS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology hexahedra map", + "name": "hexahedronD2S", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "TopologicalMapping where the destination topology is a subset of the source topology. The implementation currently assumes that both topologies have been initialized correctly.\n" + }, + { + "className": "SubsetTopology", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SubsetTopology", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "subsetTopology", + "templateName": "Rigid3d", + "typeName": "SubsetTopology>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge direction(if edgeAngle > 0)", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction of the triangles (if triAngle > 0)", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the direction of the selected edges and the specified direction", + "name": "edgeAngle", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the normal of the selected triangle and the specified normal direction", + "name": "triAngle", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the tetrahedra to keep", + "name": "tetrahedraInput", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the quads contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points out of the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edges out of the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangles out of the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quads contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quads out of the ROI", + "name": "quadsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedra out of the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra out of the ROI", + "name": "hexahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If localIndices option is activated, will give the number of vertices on the border of the ROI (being the n first points of each output Topology). ", + "name": "nbrborder", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will compute local dof indices in topological elements", + "name": "localIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw ROI", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles", + "name": "drawTriangle", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SubsetTopology", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "subsetTopology", + "templateName": "Vec3d", + "typeName": "SubsetTopology,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge direction(if edgeAngle > 0)", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction of the triangles (if triAngle > 0)", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the direction of the selected edges and the specified direction", + "name": "edgeAngle", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the normal of the selected triangle and the specified normal direction", + "name": "triAngle", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the tetrahedra to keep", + "name": "tetrahedraInput", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the quads contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points out of the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edges out of the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangles out of the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quads contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quads out of the ROI", + "name": "quadsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedra out of the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra out of the ROI", + "name": "hexahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If localIndices option is activated, will give the number of vertices on the border of the ROI (being the n first points of each output Topology). ", + "name": "nbrborder", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will compute local dof indices in topological elements", + "name": "localIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw ROI", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles", + "name": "drawTriangle", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine used to create subset topology given box, sphere, plan, ...\n" + }, + { + "className": "SumEngine", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SumEngine", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "sumEngine", + "templateName": "Vec1d", + "typeName": "SumEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vector", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output sum", + "name": "output", + "type": "Vec1d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SumEngine", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "sumEngine", + "templateName": "Vec3d", + "typeName": "SumEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vector", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output sum", + "name": "output", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Computing the sum between two vector of dofs.\n" + }, + { + "className": "SurfacePressureForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SurfacePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "surfacePressureFF", + "templateName": "Rigid3d", + "typeName": "SurfacePressureForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "d" + }, + { + "defaultValue": "0 0 0 0 0 0 1", + "group": "", + "help": "Lower bound of the selection box", + "name": "min", + "type": "RigidCoord3d" + }, + { + "defaultValue": "0 0 0 0 0 0 1", + "group": "", + "help": "Upper bound of the selection box", + "name": "max", + "type": "RigidCoord3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of affected triangles", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of affected quads", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Cyclic pressure application", + "name": "pulseMode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure lower bound force per unit area (active in pulse mode)", + "name": "pressureLowerBound", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Continuous pressure application in Pascal per second. Only active in pulse mode", + "name": "pressureSpeed", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure variation follow the inverse of the volume variation", + "name": "volumeConservationMode", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Whether (non-symmetric) stiffness matrix should be used", + "name": "useTangentStiffness", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Default Volume", + "name": "defaultVolume", + "type": "d" + }, + { + "defaultValue": "0 0 0 0 0 0", + "group": "", + "help": "Main direction for pressure application", + "name": "mainDirection", + "type": "RigidDeriv3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "DEBUG: scale used to render force vectors", + "name": "drawForceScale", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SurfacePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "surfacePressureFF", + "templateName": "Vec3d", + "typeName": "SurfacePressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Lower bound of the selection box", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Upper bound of the selection box", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of affected triangles", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of affected quads", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Cyclic pressure application", + "name": "pulseMode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure lower bound force per unit area (active in pulse mode)", + "name": "pressureLowerBound", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Continuous pressure application in Pascal per second. Only active in pulse mode", + "name": "pressureSpeed", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure variation follow the inverse of the volume variation", + "name": "volumeConservationMode", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Whether (non-symmetric) stiffness matrix should be used", + "name": "useTangentStiffness", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Default Volume", + "name": "defaultVolume", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Main direction for pressure application", + "name": "mainDirection", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "DEBUG: scale used to render force vectors", + "name": "drawForceScale", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Pressure applied on a generic surface (triangular or quadrangular).\n" + }, + { + "className": "TaitSurfacePressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TaitSurfacePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "taitSurfacePressureFF", + "templateName": "Vec3d", + "typeName": "TaitSurfacePressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Controls", + "help": "IN: Rest pressure when V = V0", + "name": "p0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Controls", + "help": "IN: Bulk modulus (resistance to uniform compression)", + "name": "B", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Controls", + "help": "IN: Bulk modulus (resistance to uniform compression)", + "name": "gamma", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Controls", + "help": "IN: Injected (or extracted) volume since the start of the simulation", + "name": "injectedVolume", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "Controls", + "help": "IN: Maximum injection rate (volume per second)", + "name": "maxInjectionRate", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Initial volume, as computed from the surface rest position", + "name": "initialVolume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Current injected (or extracted) volume (taking into account maxInjectionRate)", + "name": "currentInjectedVolume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Rest volume (as computed from initialVolume + injectedVolume)", + "name": "v0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Current volume, as computed from the last surface position", + "name": "currentVolume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Current pressure, as computed from the last surface position", + "name": "currentPressure", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: dP/dV at current volume and pressure", + "name": "currentStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUT: list of triangles where a pressure is applied (mesh triangles + tessellated quads)", + "name": "pressureTriangles", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUT: Initial surface area, as computed from the surface rest position", + "name": "initialSurfaceArea", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUT: Current surface area, as computed from the last surface position", + "name": "currentSurfaceArea", + "type": "d" + }, + { + "defaultValue": "0.001", + "group": "Visualization", + "help": "DEBUG: scale used to render force vectors", + "name": "drawForceScale", + "type": "d" + }, + { + "defaultValue": "0 1 1 1", + "group": "Visualization", + "help": "DEBUG: color used to render force vectors", + "name": "drawForceColor", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "Results", + "help": "OUT: Volume after a topology change", + "name": "volumeAfterTC", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Surface area after a topology change", + "name": "surfaceAreaAfterTC", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "This component computes the volume enclosed by a surface mesh and apply a pressure force following Tait's equation: $P = P_0 - B((V/V_0)^\\gamma - 1)$.\nThis ForceField can be used to apply :\n * a constant pressure (set $B=0$ and use $P_0$)\n * an ideal gas pressure (set $\\gamma=1$ and use $B$)\n * a pressure from water (set $\\gamma=7$ and use $B$)\n" + }, + { + "className": "Tetra2TriangleTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Tetra2TriangleTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "tetra2TriangleTopologicalMapping", + "templateName": "", + "typeName": "Tetra2TriangleTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normal ? (Inverse point order when creating triangle)", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true no new triangles are being created", + "name": "noNewTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true the list of initial triangles is initially empty. Only additional triangles will be added in the list", + "name": "noInitialTriangles", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where TetrahedronSetTopology is converted to TriangleSetTopology\n" + }, + { + "className": "TetrahedralCorotationalFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedralCorotationalFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedralCorotationalFEMFF", + "templateName": "Vec3d", + "typeName": "TetrahedralCorotationalFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal tetrahedron data", + "name": "tetrahedronInfo", + "type": "vector,Vec<3u,double>,double>>TetrahedronInformation,CPUMemoryManager,Vec<3u,double>,double>>TetrahedronInformation>>" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"small\", \"large\" (by QR) or \"polar\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Allow specification of different stiffness per element. If there are N element and M values are specified, the youngModulus factor for element i would be localStiffnessFactor[i*M/N]", + "name": "localStiffnessFactor", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "computeGlobalMatrix", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": " draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0 0 1 1", + "group": "Visualization", + "help": " draw color for faces 1", + "name": "drawColor1", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "Visualization", + "help": " draw color for faces 2", + "name": "drawColor2", + "type": "RGBAColor" + }, + { + "defaultValue": "0 1 1 1", + "group": "Visualization", + "help": " draw color for faces 3", + "name": "drawColor3", + "type": "RGBAColor" + }, + { + "defaultValue": "0.5 1 1 1", + "group": "Visualization", + "help": " draw color for faces 4", + "name": "drawColor4", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute and display von Mises stress: 0: no computations, 1: using corotational strain, 2: using full Green strain. Set listening=1", + "name": "computeVonMisesStress", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per element", + "name": "vonMisesPerElement", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per node", + "name": "vonMisesPerNode", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Corotational FEM Tetrahedral finite elements\n" + }, + { + "className": "TetrahedralTensorMassForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedralTensorMassForceField", + "namespaceName": "sofa::component::solidmechanics::tensormass", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedralTensorMassFF", + "templateName": "Vec3d", + "typeName": "TetrahedralTensorMassForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.3", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young's modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeRestInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeRestInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.TensorMass" + } + }, + "description": "Linear Elastic Tetrahedral Mesh\n" + }, + { + "className": "TetrahedronCollisionModel", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "TetrahedronCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "tetrahedronCollisionModel", + "templateName": "", + "typeName": "TetrahedronCollisionModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a tetrahedral mesh, as described in BaseMeshTopology.\n" + }, + { + "className": "TetrahedronDiffusionFEMForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronDiffusionFEMForceField", + "namespaceName": "sofa::component::diffusion", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "tetrahedronDiffusionFEMFF", + "templateName": "Vec1d", + "typeName": "TetrahedronDiffusionFEMForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Constant diffusion coefficient", + "name": "constantDiffusionCoefficient", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Diffusion coefficient for each tetrahedron, by default equal to constantDiffusionCoefficient.", + "name": "tetraDiffusionCoefficient", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Anisotropy ratio (r²>1).\n Default is 1.0 = isotropy.", + "name": "anisotropyRatio", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to handle topology on tetrahedra", + "name": "transverseAnisotropyArray", + "type": "vector" + }, + { + "defaultValue": "meca", + "group": "", + "help": "Tag of the Mechanical Object.", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "To display conductivity map.", + "name": "drawConduc", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Diffusion" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronDiffusionFEMForceField", + "namespaceName": "sofa::component::diffusion", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "tetrahedronDiffusionFEMFF", + "templateName": "Vec2d", + "typeName": "TetrahedronDiffusionFEMForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Constant diffusion coefficient", + "name": "constantDiffusionCoefficient", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Diffusion coefficient for each tetrahedron, by default equal to constantDiffusionCoefficient.", + "name": "tetraDiffusionCoefficient", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Anisotropy ratio (r²>1).\n Default is 1.0 = isotropy.", + "name": "anisotropyRatio", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to handle topology on tetrahedra", + "name": "transverseAnisotropyArray", + "type": "vector" + }, + { + "defaultValue": "meca", + "group": "", + "help": "Tag of the Mechanical Object.", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "To display conductivity map.", + "name": "drawConduc", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Diffusion" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronDiffusionFEMForceField", + "namespaceName": "sofa::component::diffusion", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedronDiffusionFEMFF", + "templateName": "Vec3d", + "typeName": "TetrahedronDiffusionFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Constant diffusion coefficient", + "name": "constantDiffusionCoefficient", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Diffusion coefficient for each tetrahedron, by default equal to constantDiffusionCoefficient.", + "name": "tetraDiffusionCoefficient", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Anisotropy ratio (r²>1).\n Default is 1.0 = isotropy.", + "name": "anisotropyRatio", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to handle topology on tetrahedra", + "name": "transverseAnisotropyArray", + "type": "vector" + }, + { + "defaultValue": "meca", + "group": "", + "help": "Tag of the Mechanical Object.", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "To display conductivity map.", + "name": "drawConduc", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Diffusion" + } + }, + "description": "Isotropic or anisotropic diffusion on Tetrahedral Meshes.\n" + }, + { + "className": "TetrahedronFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>", + "RotationFinder,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedronFEMFF", + "templateName": "Vec3d", + "typeName": "TetrahedronFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"small\", \"large\" (by QR), \"polar\" or \"svd\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Allow specification of different stiffness per element. If there are N element and M values are specified, the youngModulus factor for element i would be localStiffnessFactor[i*M/N]", + "name": "localStiffnessFactor", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "computeGlobalMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Plastic Max Threshold (2-norm of the strain)", + "name": "plasticMaxThreshold", + "type": "d" + }, + { + "defaultValue": "0.0001", + "group": "", + "help": "Plastic Yield Threshold (2-norm of the strain)", + "name": "plasticYieldThreshold", + "type": "d" + }, + { + "defaultValue": "0.9", + "group": "", + "help": "Plastic Creep Factor * dt [0,1]. Warning this factor depends on dt.", + "name": "plasticCreep", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Heterogeneous Tetra in different color", + "name": "drawHeterogeneousTetra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute and display von Mises stress: 0: no computations, 1: using corotational strain, 2: using full Green strain. Set listening=1", + "name": "computeVonMisesStress", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per element", + "name": "vonMisesPerElement", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per node", + "name": "vonMisesPerNode", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of colors describing the VonMises stress", + "name": "vonMisesStressColors", + "type": "vector" + }, + { + "defaultValue": "Blue to Red", + "group": "Visualization", + "help": "Color map used to show stress values", + "name": "showStressColorMap", + "type": "string" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Alpha for vonMises visualisation", + "name": "showStressAlpha", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw points showing vonMises stress interpolated in nodes", + "name": "showVonMisesStressPerNode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw elements showing vonMises stress interpolated in nodes", + "name": "showVonMisesStressPerNodeColorMap", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw triangles showing vonMises stress interpolated in elements", + "name": "showVonMisesStressPerElement", + "type": "bool" + }, + { + "defaultValue": "0.333", + "group": "Visualization", + "help": "draw gap between elements (when showWireFrame is disabled) [0,1]: 0: no gap, 1: no element", + "name": "showElementGapScale", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "update structures (precomputed in init) using stiffness parameters in each iteration (set listening=1)", + "name": "updateStiffness", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Tetrahedral finite elements.\n" + }, + { + "className": "TetrahedronHyperelasticityFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronHyperelasticityFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::hyperelastic", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedronHyperelasticityFEMFF", + "templateName": "Vec3d", + "typeName": "TetrahedronHyperelasticityFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Regularization of the Stiffness Matrix (between true or false)", + "name": "matrixRegularization", + "type": "bool" + }, + { + "defaultValue": "ArrudaBoyce", + "group": "", + "help": "the name of the material to be used. Possible options are: 'ArrudaBoyce', 'Costa', 'MooneyRivlin', 'NeoHookean', 'Ogden', 'StVenantKirchhoff', 'VerondaWestman', 'StableNeoHookean'", + "name": "materialName", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "The global parameters specifying the material", + "name": "ParameterSet", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The global directions of anisotropy of the material: vector containing anisotropic directions. The vector size is 0 if the material is isotropic, 1 if it is transversely isotropic and 2 for orthotropic materials", + "name": "AnisotropyDirections", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal tetrahedron data", + "name": "tetrahedronInfo", + "type": "vector,Vec<3u,double>,double>>TetrahedronRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TetrahedronRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.HyperElastic" + } + }, + "description": "Generic Hyperelastic Tetrahedral finite elements.\n" + }, + { + "className": "TetrahedronSetGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TetrahedronSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TriangleSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "tetrahedronSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "TetrahedronSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Triangle indices", + "name": "showTriangleIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0.3 0.5 0.8 1", + "group": "Visualization", + "help": "RGBA code color used to draw triangles", + "name": "drawColorTriangles", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawNormals", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "Fiber length visualisation.", + "name": "drawNormalLength", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will recompute triangles orientation according to normals", + "name": "recomputeTrianglesOrientation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will flip normal of the first triangle used to recompute triangle orientation.", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Tetrahedrons indices", + "name": "showTetrahedraIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the tetrahedra in the topology", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the terahedra (between 0 and 1; if <1.0, it produces gaps between the tetrahedra)", + "name": "drawScaleTetrahedra", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "RGBA code color used to draw tetrahedra.", + "name": "drawColorTetrahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TetrahedronSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TriangleSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedronSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "TetrahedronSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Triangle indices", + "name": "showTriangleIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0.3 0.5 0.8 1", + "group": "Visualization", + "help": "RGBA code color used to draw triangles", + "name": "drawColorTriangles", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawNormals", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "Fiber length visualisation.", + "name": "drawNormalLength", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will recompute triangles orientation according to normals", + "name": "recomputeTrianglesOrientation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will flip normal of the first triangle used to recompute triangle orientation.", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Tetrahedrons indices", + "name": "showTetrahedraIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the tetrahedra in the topology", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the terahedra (between 0 and 1; if <1.0, it produces gaps between the tetrahedra)", + "name": "drawScaleTetrahedra", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "RGBA code color used to draw tetrahedra.", + "name": "drawColorTetrahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to a tetrahedral topology.\n" + }, + { + "className": "TetrahedronSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TetrahedronSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TriangleSetTopologyContainer" + ], + "shortName": "tetrahedronSetTopologyContainer", + "templateName": "", + "typeName": "TetrahedronSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force the creation of a set of triangles associated with each tetrahedron", + "name": "createTriangleArray", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to a tetrahedral topology.\n" + }, + { + "className": "TetrahedronSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TetrahedronSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TriangleSetTopologyModifier" + ], + "shortName": "tetrahedronSetTopologyModifier", + "templateName": "", + "typeName": "TetrahedronSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "triangles with at least one null values.", + "name": "list_Out", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Remove isolated DOFs", + "name": "removeIsolated", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to a tetrahedral topology.\n" + }, + { + "className": "TextureInterpolation", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TextureInterpolation", + "namespaceName": "sofa::gl::component::engine", + "parents": [ + "DataEngine" + ], + "shortName": "textureInterpolation", + "templateName": "Vec1d", + "typeName": "TextureInterpolation,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of state values.", + "name": "input_states", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input array of coordinates values.", + "name": "input_coordinates", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of texture coordinates.", + "name": "output_coordinates", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "To interpolate only the first dimension of input field (useful if this component need to be templated in higher dimension).", + "name": "scalarField", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "minimum value of state value for interpolation.", + "name": "min_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "maximum value of state value for interpolation.", + "name": "max_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute texture interpolation on manually scale defined above.", + "name": "manual_scale", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug: view state values.", + "name": "drawPotentiels", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Debug : scale of state values displayed.", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Vertex index of values display in graph for each iteration.", + "name": "vertexPloted", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertex state value per iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Engine" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TextureInterpolation", + "namespaceName": "sofa::gl::component::engine", + "parents": [ + "DataEngine" + ], + "shortName": "textureInterpolation", + "templateName": "Vec2d", + "typeName": "TextureInterpolation,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of state values.", + "name": "input_states", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input array of coordinates values.", + "name": "input_coordinates", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of texture coordinates.", + "name": "output_coordinates", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "To interpolate only the first dimension of input field (useful if this component need to be templated in higher dimension).", + "name": "scalarField", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "minimum value of state value for interpolation.", + "name": "min_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "maximum value of state value for interpolation.", + "name": "max_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute texture interpolation on manually scale defined above.", + "name": "manual_scale", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug: view state values.", + "name": "drawPotentiels", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Debug : scale of state values displayed.", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Vertex index of values display in graph for each iteration.", + "name": "vertexPloted", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertex state value per iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Engine" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TextureInterpolation", + "namespaceName": "sofa::gl::component::engine", + "parents": [ + "DataEngine" + ], + "shortName": "textureInterpolation", + "templateName": "Vec3d", + "typeName": "TextureInterpolation,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of state values.", + "name": "input_states", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input array of coordinates values.", + "name": "input_coordinates", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of texture coordinates.", + "name": "output_coordinates", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "To interpolate only the first dimension of input field (useful if this component need to be templated in higher dimension).", + "name": "scalarField", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "minimum value of state value for interpolation.", + "name": "min_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "maximum value of state value for interpolation.", + "name": "max_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute texture interpolation on manually scale defined above.", + "name": "manual_scale", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug: view state values.", + "name": "drawPotentiels", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Debug : scale of state values displayed.", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Vertex index of values display in graph for each iteration.", + "name": "vertexPloted", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertex state value per iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Engine" + } + }, + "description": "Create texture coordinate for a given field.\n" + }, + { + "className": "TopologicalChangeProcessor", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "TopologicalChangeProcessor", + "namespaceName": "sofa::component::topology::utility", + "parents": [ + "BaseObject" + ], + "shortName": "topologicalChangeProcessor", + "templateName": "", + "typeName": "TopologicalChangeProcessor" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "input file name for topological changes.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "0 for adding, 1 for removing, 2 for cutting and associated indices.", + "name": "listChanges", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between 2 actions", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will perform operation using Data input lists rather than text file.", + "name": "useDataInputs", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If using option useDataInputs, time at which will be done the operations. Possibility to use the interval Data also.", + "name": "timeToRemove", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point IDs to be removed.", + "name": "pointsToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge IDs to be removed.", + "name": "edgesToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle IDs to be removed.", + "name": "trianglesToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad IDs to be removed.", + "name": "quadsToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron IDs to be removed.", + "name": "tetrahedraToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron IDs to be removed.", + "name": "hexahedraToRemove", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to save the incision to do in the init to incise even after a movement", + "name": "saveIndicesAtInit", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "epsilon snap path", + "name": "epsilonSnapPath", + "type": "d" + }, + { + "defaultValue": "0.25", + "group": "", + "help": "epsilon snap path", + "name": "epsilonSnapBorder", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw information", + "name": "draw", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Utility" + } + }, + "description": "Read topological changes and process them.\n" + }, + { + "className": "TopologyBoundingTrasher", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "TopologyBoundingTrasher", + "namespaceName": "sofa::component::topology::utility", + "parents": [ + "BaseObject" + ], + "shortName": "topologyBoundingTrasher", + "templateName": "Vec3d", + "typeName": "TopologyBoundingTrasher,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position coordinates of the topology object to interact with.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "-1000 -1000 -1000 1000 1000 1000", + "group": "", + "help": "List of boxes defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw bounding box (default = false)", + "name": "drawBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Utility" + } + }, + "description": "Component removing all elements going outside from the given bounding box.\n" + }, + { + "className": "TopologyChecker", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "TopologyChecker", + "namespaceName": "sofa::component::topology::utility", + "parents": [ + "BaseObject" + ], + "shortName": "topologyChecker", + "templateName": "", + "typeName": "TopologyChecker" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Check topology at each step", + "name": "eachStep", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Utility" + } + }, + "description": "Read topological Changes and process them.\n" + }, + { + "className": "TorsionForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TorsionForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "torsionFF", + "templateName": "Rigid3d", + "typeName": "TorsionForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices of the selected points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "torque to apply", + "name": "torque", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction of the axis (will be normalized)", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "origin of the axis", + "name": "origin", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TorsionForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "torsionFF", + "templateName": "Vec3d", + "typeName": "TorsionForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices of the selected points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "torque to apply", + "name": "torque", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction of the axis (will be normalized)", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "origin of the axis", + "name": "origin", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Applies a torque to specified degrees of freedom.\n" + }, + { + "className": "TrailRenderer", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "TrailRenderer", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "trailRenderer", + "templateName": "Rigid3d", + "typeName": "TrailRenderer>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Position of the particles behind which a trail is rendered", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Number of time steps to use to render the trail", + "name": "nbSteps", + "type": "I" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "Color of the trail", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the trail", + "name": "thickness", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + }, + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "TrailRenderer", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "trailRenderer", + "templateName": "Vec3d", + "typeName": "TrailRenderer,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Position of the particles behind which a trail is rendered", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Number of time steps to use to render the trail", + "name": "nbSteps", + "type": "I" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "Color of the trail", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the trail", + "name": "thickness", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Render a trail behind particles.\n" + }, + { + "className": "TransformEngine", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Rigid2d", + "typeName": "TransformEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Rigid3d", + "typeName": "TransformEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Vec1d", + "typeName": "TransformEngine,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Vec2d", + "typeName": "TransformEngine,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Vec3d", + "typeName": "TransformEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Engine applying a transformation on 3d points (translation / rotation).\n" + }, + { + "className": "TransformPosition", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformPosition", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformPosition", + "templateName": "Vec3d", + "typeName": "TransformPosition,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "A 3d point on the plane/Center of the scale", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points projected on a plane", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "plane normal", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "translation vector ", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "rotation vector ", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "4x4 affine matrix", + "name": "matrix", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "", + "help": "transformation method either translation or scale or rotation or random or projectOnPlane", + "name": "method", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "the seed value for the random generator", + "name": "seedValue", + "type": "l" + }, + { + "defaultValue": "1", + "group": "", + "help": "the maximum displacement around initial position for the random transformation", + "name": "maxRandomDisplacement", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the entries that are not transformed", + "name": "fixedIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "filename of an affine matrix. Supported extensions are: .trm, .tfm, .xfm and .txt(read as .xfm)", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw input points", + "name": "drawInput", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw output points", + "name": "drawOutput", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Point size", + "name": "pointSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Transform position of 3d points.\n" + }, + { + "className": "TranslateTransformMatrixEngine", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "TranslateTransformMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "AbstractTransformMatrixEngine" + ], + "shortName": "translateTransformMatrixEngine", + "templateName": "", + "typeName": "TranslateTransformMatrixEngine" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "input transformation if any", + "name": "inT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output transformation", + "name": "outT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "", + "help": "translation vector", + "name": "translation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Compose the input transform (if any) with the given translation.\n" + }, + { + "className": "Triangle2EdgeTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Triangle2EdgeTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "triangle2EdgeTopologicalMapping", + "templateName": "", + "typeName": "Triangle2EdgeTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where TriangleSetTopology is converted to EdgeSetTopology\n" + }, + { + "className": "TriangleBendingSprings", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "TriangleBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "triangleBendingSprings", + "templateName": "Vec2d", + "typeName": "TriangleBendingSprings,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "TriangleBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangleBendingSprings", + "templateName": "Vec3d", + "typeName": "TriangleBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a triangular mesh to prevent bending.\n" + }, + { + "className": "TriangleCollisionModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "TriangleCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "triangleCollisionModel", + "templateName": "Vec3d", + "typeName": "TriangleCollisionModel,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the triangle model", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set to false to disable computation of triangles normal", + "name": "computeNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use the curvature of the mesh to avoid some self-intersection test", + "name": "useCurvature", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a triangular mesh, as described in BaseMeshTopology.\n" + }, + { + "className": "TriangleFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangleFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangleFEMFF", + "templateName": "Vec3d", + "typeName": "TriangleFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "large: large displacements, small: small displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the elements", + "name": "thickness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Plane strain or plane stress assumption", + "name": "planeStrain", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Triangular finite elements for static topology.\n" + }, + { + "className": "TriangleModelInRegularGrid", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "TriangleModelInRegularGrid", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "TriangleCollisionModel,Vec<3u,double>,double>>" + ], + "shortName": "triangleModelInRegularGrid", + "templateName": "", + "typeName": "TriangleModelInRegularGrid" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the triangle model", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set to false to disable computation of triangles normal", + "name": "computeNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use the curvature of the mesh to avoid some self-intersection test", + "name": "useCurvature", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a triangular mesh in a regular grid, as described in BaseMeshTopology.\n" + }, + { + "className": "TriangleOctreeCollisionModel", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "TriangleOctreeCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "TriangleCollisionModel,Vec<3u,double>,double>>" + ], + "shortName": "triangleOctreeCollisionModel", + "templateName": "", + "typeName": "TriangleOctreeCollisionModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the triangle model", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set to false to disable computation of triangles normal", + "name": "computeNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use the curvature of the mesh to avoid some self-intersection test", + "name": "useCurvature", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw the octree structure", + "name": "drawOctree", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a triangular mesh mapped to an Octree.\n" + }, + { + "className": "TrianglePressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TrianglePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "trianglePressureFF", + "templateName": "Vec3d", + "typeName": "TrianglePressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "Vec3d" + }, + { + "defaultValue": "[ 0 0 0 , 0 0 0 , 0 0 0]", + "group": "", + "help": "Cauchy Stress applied on the normal of each triangle", + "name": "cauchyStress", + "type": "MatSym<3u,double>" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of triangles separated with commas where a pressure is applied", + "name": "triangleList", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw triangles which have a given pressure", + "name": "showForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force is computed as the pressure vector times the area at rest", + "name": "useConstantForce", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Map between triangle indices and their pressure", + "name": "trianglePressureMap", + "type": "vector,Vec<3u,double>,double>>TrianglePressureInformation,CPUMemoryManager,Vec<3u,double>,double>>TrianglePressureInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Pressure applied on a triangular geometry.\n" + }, + { + "className": "TriangleSetGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TriangleSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "triangleSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "TriangleSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Triangle indices", + "name": "showTriangleIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0.3 0.5 0.8 1", + "group": "Visualization", + "help": "RGBA code color used to draw triangles", + "name": "drawColorTriangles", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawNormals", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "Fiber length visualisation.", + "name": "drawNormalLength", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will recompute triangles orientation according to normals", + "name": "recomputeTrianglesOrientation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will flip normal of the first triangle used to recompute triangle orientation.", + "name": "flipNormals", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TriangleSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "triangleSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "TriangleSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Triangle indices", + "name": "showTriangleIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0.3 0.5 0.8 1", + "group": "Visualization", + "help": "RGBA code color used to draw triangles", + "name": "drawColorTriangles", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawNormals", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "Fiber length visualisation.", + "name": "drawNormalLength", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will recompute triangles orientation according to normals", + "name": "recomputeTrianglesOrientation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will flip normal of the first triangle used to recompute triangle orientation.", + "name": "flipNormals", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to a triangular topology.\n" + }, + { + "className": "TriangleSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TriangleSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetTopologyContainer" + ], + "shortName": "triangleSetTopologyContainer", + "templateName": "", + "typeName": "TriangleSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to a triangular topology.\n" + }, + { + "className": "TriangleSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TriangleSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetTopologyModifier" + ], + "shortName": "triangleSetTopologyModifier", + "templateName": "", + "typeName": "TriangleSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "triangles with at least one null values.", + "name": "list_Out", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to a triangular topology.\n" + }, + { + "className": "TriangularAnisotropicFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularAnisotropicFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "TriangularFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularAnisotropicFEMFF", + "templateName": "Vec3d", + "typeName": "TriangularAnisotropicFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleInformation,CPUMemoryManager,Vec<3u,double>,double>>TriangleInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal point data", + "name": "vertexInfo", + "type": "vector,Vec<3u,double>,double>>VertexInformation,CPUMemoryManager,Vec<3u,double>,double>>VertexInformation>>" + }, + { + "defaultValue": "large", + "group": "", + "help": "large: large displacements, small: small displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "rotatedInitialElements", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "initialTransformation", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Exponent in the Hosford yield criteria", + "name": "hosfordExponant", + "type": "d" + }, + { + "defaultValue": "1e+15", + "group": "", + "help": "Fracturable threshold used to draw fracturable triangles", + "name": "criteriaValue", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Flag activating rendering of stress values as a color in each triangle", + "name": "showStressValue", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "showStressVector", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of triangles to fracture", + "name": "showFracturableTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute principal stress for each triangle", + "name": "computePrincipalStress", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "transverseYoungModulus", + "name": "transverseYoungModulus", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Fiber angle in global reference frame (in degrees)", + "name": "fiberAngle", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Concentric fiber center in global reference frame", + "name": "fiberCenter", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Flag activating rendering of fiber directions within each triangle", + "name": "showFiber", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Computed fibers direction within each triangle", + "name": "localFiberDirection", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Triangular finite element model using anisotropic material.\n" + }, + { + "className": "TriangularBendingSprings", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularBendingSprings", + "templateName": "Vec3d", + "typeName": "TriangularBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "100000", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "option to draw springs", + "name": "showSprings", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a triangular mesh to prevent bending\n" + }, + { + "className": "TriangularBiquadraticSpringsForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularBiquadraticSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularBiquadraticSpringsFF", + "templateName": "Vec3d", + "typeName": "TriangularBiquadraticSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TriangleRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeRestInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0.3", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Ratio damping/stiffness", + "name": "dampingRatio", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If Angular Springs should be used or not", + "name": "useAngularSprings", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If additional energy penalizing compressibility should be used", + "name": "compressible", + "type": "bool" + }, + { + "defaultValue": "0.4", + "group": "", + "help": "Regularization of the Stiffnes Matrix (between 0 and 1)", + "name": "matrixRegularization", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Biquadratic Springs on a Triangular Mesh.\n" + }, + { + "className": "TriangularFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularFEMFF", + "templateName": "Vec3d", + "typeName": "TriangularFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleInformation,CPUMemoryManager,Vec<3u,double>,double>>TriangleInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal point data", + "name": "vertexInfo", + "type": "vector,Vec<3u,double>,double>>VertexInformation,CPUMemoryManager,Vec<3u,double>,double>>VertexInformation>>" + }, + { + "defaultValue": "large", + "group": "", + "help": "large: large displacements, small: small displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "rotatedInitialElements", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "initialTransformation", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Exponent in the Hosford yield criteria", + "name": "hosfordExponant", + "type": "d" + }, + { + "defaultValue": "1e+15", + "group": "", + "help": "Fracturable threshold used to draw fracturable triangles", + "name": "criteriaValue", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Flag activating rendering of stress values as a color in each triangle", + "name": "showStressValue", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "showStressVector", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of triangles to fracture", + "name": "showFracturableTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute principal stress for each triangle", + "name": "computePrincipalStress", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Corotational Triangular finite elements for dynamic topology.\n" + }, + { + "className": "TriangularFEMForceFieldOptim", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularFEMForceFieldOptim", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularFEMFFOptim", + "templateName": "Vec3d", + "typeName": "TriangularFEMForceFieldOptim,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data (persistent)", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleInfo,CPUMemoryManager,Vec<3u,double>,double>>TriangleInfo>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data (time-dependent)", + "name": "triangleState", + "type": "vector,Vec<3u,double>,double>>TriangleState,CPUMemoryManager,Vec<3u,double>,double>>TriangleState>>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Ratio damping/stiffness", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale factor applied to rest positions (to simulate pre-stretched materials)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute principal stress for each triangle", + "name": "computePrincipalStress", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max stress value computed over the triangulation", + "name": "stressMaxValue", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "showStressVector", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Threshold value to render only stress vectors higher to this threshold", + "name": "showStressThreshold", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Corotational Triangular finite elements.\n" + }, + { + "className": "TriangularQuadraticSpringsForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularQuadraticSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularQuadraticSpringsFF", + "templateName": "Vec3d", + "typeName": "TriangularQuadraticSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0.3", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Ratio damping/stiffness", + "name": "dampingRatio", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If Angular Springs should be used or not", + "name": "useAngularSprings", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TriangleRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeRestInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeRestInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Quadratic Springs on a Triangular Mesh.\n" + }, + { + "className": "TriangularTensorMassForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularTensorMassForceField", + "namespaceName": "sofa::component::solidmechanics::tensormass", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularTensorMassFF", + "templateName": "Vec3d", + "typeName": "TriangularTensorMassForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeRestInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeRestInformation>>" + }, + { + "defaultValue": "0.3", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young's modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.TensorMass" + } + }, + "description": "Linear Elastic Membrane on a Triangular Mesh\n" + }, + { + "className": "TubularMapping", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "TubularMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "tubularMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "TubularMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Discretization of created circles", + "name": "nbPointsOnEachCircle", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of created circles", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "=0 no peak, =1 peak on the first segment =2 peak on the two first segment, =-1 peak on the last segment", + "name": "peak", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Create a Tube around rigid points.\n" + }, + { + "className": "TypedMatrixLinearSystem", + "creator": { + "BTDMatrix6d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "TypedMatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "BaseMatrixLinearSystem" + ], + "shortName": "typedMatrixLinearSystem", + "templateName": "BTDMatrix6d", + "typeName": "TypedMatrixLinearSystem,BlockVector<6ul,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Linear system dedicated to a Band Tri Diagonal typed matrix.\n" + }, + { + "className": "UnbuiltGaussSeidelConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UnbuiltGaussSeidelConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "UnbuiltConstraintSolver" + ], + "shortName": "unbuiltGaussSeidelConstraintSolver", + "templateName": "", + "typeName": "UnbuiltGaussSeidelConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of iterative algorithm", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute graphs of errors and forces during resolution", + "name": "computeGraphs", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's violation at each step of the resolution", + "name": "graphViolations", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraints", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraintGroups", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraint groups", + "name": "currentIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current error", + "name": "currentError", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve Constraint based components using an Unbuilt version of the Gauss-Seidel iterative method\n" + }, + { + "className": "UncoupledConstraintCorrection", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UncoupledConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection>" + ], + "shortName": "uncoupledConstraintCorrection", + "templateName": "Rigid3d", + "typeName": "UncoupledConstraintCorrection>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Compliance value on each dof. If Rigid compliance (7 values): 1st value for translations, 6 others for upper-triangular part of symmetric 3x3 rotation compliance matrix", + "name": "compliance", + "type": "vector" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Default compliance value for new dof or if all should have the same (in which case compliance vector should be empty)", + "name": "defaultCompliance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump the constraint matrix at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the velocities", + "name": "correctionVelocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the positions", + "name": "correctionPositionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use odeSolver integration factors instead of correctionVelocityFactor and correctionPositionFactor", + "name": "useOdeSolverIntegrationFactors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec1d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UncoupledConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<1u,double>,double>>" + ], + "shortName": "uncoupledConstraintCorrection", + "templateName": "Vec1d", + "typeName": "UncoupledConstraintCorrection,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Compliance value on each dof. If Rigid compliance (7 values): 1st value for translations, 6 others for upper-triangular part of symmetric 3x3 rotation compliance matrix", + "name": "compliance", + "type": "vector" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Default compliance value for new dof or if all should have the same (in which case compliance vector should be empty)", + "name": "defaultCompliance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump the constraint matrix at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the velocities", + "name": "correctionVelocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the positions", + "name": "correctionPositionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use odeSolver integration factors instead of correctionVelocityFactor and correctionPositionFactor", + "name": "useOdeSolverIntegrationFactors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec2d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UncoupledConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<2u,double>,double>>" + ], + "shortName": "uncoupledConstraintCorrection", + "templateName": "Vec2d", + "typeName": "UncoupledConstraintCorrection,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Compliance value on each dof. If Rigid compliance (7 values): 1st value for translations, 6 others for upper-triangular part of symmetric 3x3 rotation compliance matrix", + "name": "compliance", + "type": "vector" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Default compliance value for new dof or if all should have the same (in which case compliance vector should be empty)", + "name": "defaultCompliance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump the constraint matrix at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the velocities", + "name": "correctionVelocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the positions", + "name": "correctionPositionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use odeSolver integration factors instead of correctionVelocityFactor and correctionPositionFactor", + "name": "useOdeSolverIntegrationFactors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UncoupledConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<3u,double>,double>>" + ], + "shortName": "uncoupledConstraintCorrection", + "templateName": "Vec3d", + "typeName": "UncoupledConstraintCorrection,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Compliance value on each dof. If Rigid compliance (7 values): 1st value for translations, 6 others for upper-triangular part of symmetric 3x3 rotation compliance matrix", + "name": "compliance", + "type": "vector" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Default compliance value for new dof or if all should have the same (in which case compliance vector should be empty)", + "name": "defaultCompliance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump the constraint matrix at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the velocities", + "name": "correctionVelocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the positions", + "name": "correctionPositionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use odeSolver integration factors instead of correctionVelocityFactor and correctionPositionFactor", + "name": "useOdeSolverIntegrationFactors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + } + }, + "description": "Component computing constraint forces within a simulated body using the compliance method, approximating the compliance matrix by a diagonal matrix.\n" + }, + { + "className": "UniformLagrangianConstraint", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "UniformLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<1u,double>,double>>" + ], + "shortName": "uniformLagrangianConstraint", + "templateName": "Vec1d", + "typeName": "UniformLagrangianConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Iterate over the bilateral constraints, otherwise a block factorisation is computed.", + "name": "iterative", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if false, constrains the pos to be zero / if true constraint the current position to stay at rest position", + "name": "constrainToRestPos", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "A constraint equation applied on all dofs.\n" + }, + { + "className": "UniformMass", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "uniformMass", + "templateName": "Rigid2d", + "typeName": "UniformMass>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "RigidMass<2u,double>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Rigid3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "uniformMass", + "templateName": "Rigid3d", + "typeName": "UniformMass>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1 1 [1 0 0,0 1 0,0 0 1]", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "RigidMass<3u,double>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "rigid file to load the mass parameters", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "uniformMass", + "templateName": "Vec1d", + "typeName": "UniformMass,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<2u,double>,double>>" + ], + "shortName": "uniformMass", + "templateName": "Vec2d", + "typeName": "UniformMass,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<3u,double>,double>>" + ], + "shortName": "uniformMass", + "templateName": "Vec3d", + "typeName": "UniformMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec6d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<6u,double>,double>>" + ], + "shortName": "uniformMass", + "templateName": "Vec6d", + "typeName": "UniformMass,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + } + }, + "description": "Compute a mass equally spread over the number of nodes.\n" + }, + { + "className": "UniformVelocityDampingForceField", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Rigid2d", + "typeName": "UniformVelocityDampingForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Rigid3d", + "typeName": "UniformVelocityDampingForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Vec1d", + "typeName": "UniformVelocityDampingForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Vec2d", + "typeName": "UniformVelocityDampingForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Vec3d", + "typeName": "UniformVelocityDampingForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Vec6d", + "typeName": "UniformVelocityDampingForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Uniform velocity damping.\n" + }, + { + "className": "UnilateralLagrangianConstraint", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "UnilateralLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "BaseContactLagrangianConstraint,Vec<3u,double>,double>,UnilateralLagrangianContactParameters>" + ], + "shortName": "unilateralLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "UnilateralLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "Lagrangian-based inequality constraint\n" + }, + { + "className": "VTKExporter", + "creator": { + "": { + "class": { + "categories": [ + "Exporter" + ], + "className": "VTKExporter", + "namespaceName": "sofa::component::_vtkexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "vTKExporter", + "templateName": "", + "typeName": "VTKExporter" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set to true to use XML format", + "name": "XMLformat", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "points position (will use points from topology or mechanical state if this is empty)", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "write edge topology", + "name": "edges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "write triangle topology", + "name": "triangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "write quad topology", + "name": "quads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "write tetra topology", + "name": "tetras", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "write hexa topology", + "name": "hexas", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to visualize (on points)", + "name": "pointsDataFields", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to visualize (on cells)", + "name": "cellsDataFields", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "overwrite the file, otherwise create a new file at each export, with suffix in the filename", + "name": "overwrite", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "topology to export", + "name": "topology" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "mechanical state to export", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Export a given mesh in a VTK file.\n" + }, + { + "className": "ValuesFromIndices", + "creator": { + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "I", + "typeName": "ValuesFromIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "RigidCoord2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "RigidCoord2d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "RigidCoord3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "RigidCoord3d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "RigidDeriv2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "RigidDeriv2d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "RigidDeriv3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "RigidDeriv3d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "Vec2d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "Vec3d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec4d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "Vec4d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "Vec6d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "d", + "typeName": "ValuesFromIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "fixed_array", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "fixed_array", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "fixed_array", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "fixed_array", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "i", + "typeName": "ValuesFromIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "string": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "string", + "typeName": "ValuesFromIndices,allocator>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the values given a list of indices.\n" + }, + { + "className": "ValuesFromPositions", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromPositions", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromPositions", + "templateName": "Rigid3d", + "typeName": "ValuesFromPositions>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input values", + "name": "inputValues", + "type": "vector" + }, + { + "defaultValue": "0 1 0", + "group": "Inputs", + "help": "Direction along which the values are interpolated", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the points contained in the ROI", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the edges contained in the ROI", + "name": "edgeValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the triangles contained in the ROI", + "name": "triangleValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the tetrahedra contained in the ROI", + "name": "tetrahedronValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the points contained in the ROI", + "name": "pointVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the edges contained in the ROI", + "name": "edgeVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the triangles contained in the ROI", + "name": "triangleVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the tetrahedra contained in the ROI", + "name": "tetrahedronVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "field type of output elements", + "name": "fieldType", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw vectors line", + "name": "drawVectors", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "vector length visualisation. ", + "name": "drawVectorLength", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromPositions", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromPositions", + "templateName": "Vec3d", + "typeName": "ValuesFromPositions,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input values", + "name": "inputValues", + "type": "vector" + }, + { + "defaultValue": "0 1 0", + "group": "Inputs", + "help": "Direction along which the values are interpolated", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the points contained in the ROI", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the edges contained in the ROI", + "name": "edgeValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the triangles contained in the ROI", + "name": "triangleValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the tetrahedra contained in the ROI", + "name": "tetrahedronValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the points contained in the ROI", + "name": "pointVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the edges contained in the ROI", + "name": "edgeVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the triangles contained in the ROI", + "name": "triangleVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the tetrahedra contained in the ROI", + "name": "tetrahedronVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "field type of output elements", + "name": "fieldType", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw vectors line", + "name": "drawVectors", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "vector length visualisation. ", + "name": "drawVectorLength", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Assign values to primitives (vertex/edge/triangle/tetrahedron) based on a linear interpolation of values along a direction.\n" + }, + { + "className": "VariationalSymplecticSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "VariationalSymplecticSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "OdeSolver", + "LinearSolverAccessor" + ], + "shortName": "variationalSymplecticSolver", + "templateName": "", + "typeName": "VariationalSymplecticSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Error tolerance for Newton iterations", + "name": "newtonError", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Maximum number of Newton steps", + "name": "steps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to stiffness, > 0", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass, > 0", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If kinetic and potential energies should be dumped in a CSV file at each iteration", + "name": "saveEnergyInFile", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use explicit integration scheme", + "name": "explicitIntegration", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "File name where kinetic and potential energies are saved in a CSV file", + "name": "file", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute hamiltonian", + "name": "computeHamiltonian", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "hamiltonian energy", + "name": "hamiltonianEnergy", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "use real potential energy, if false use approximate potential energy", + "name": "useIncrementalPotentialEnergy", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Implicit time integrator which conserves linear momentum and mechanical energy.\n" + }, + { + "className": "VectorSpringForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "VectorSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<3u,double>,double>>" + ], + "shortName": "vectorSpringFF", + "templateName": "Vec3d", + "typeName": "VectorSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "springs data", + "name": "springs", + "type": "vector,Vec<3u,double>,double>>Spring,CPUMemoryManager,Vec<3u,double>,double>>Spring>>" + }, + { + "defaultValue": "", + "group": "", + "help": "File name from which the spring information are loaded", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default edge stiffness used in absence of file information", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default edge viscosity used in absence of file information", + "name": "viscosity", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Activate/Deactivate topology mode of the component (springs on each edge)", + "name": "useTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Spring force field acting along the edges of a mesh.\n" + }, + { + "className": "Vertex2Frame", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "Vertex2Frame", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "vertex2Frame", + "templateName": "Rigid3d", + "typeName": "Vertex2Frame>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "TexCoords of the mesh loaded", + "name": "texCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Frames at output", + "name": "frames", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use normals to compute the orientations; if disabled the direction of the x axisof a vertice is the one from this vertice to the next one", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Swap normals", + "name": "invertNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Apply a local rotation on the frames. If 0 a x-axis rotation is applied. If 1 a y-axis rotation is applied, If 2 a z-axis rotation is applied.", + "name": "rotation", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Angle rotation", + "name": "rotationAngle", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Return a rigid position from the vertices, texCoords, normals and facets of any mesh.\n" + }, + { + "className": "ViewerSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "ViewerSetting", + "namespaceName": "sofa::component::setting", + "parents": [ + "ConfigurationSetting" + ], + "shortName": "viewerSetting", + "templateName": "", + "typeName": "ViewerSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "800 600", + "group": "Viewport", + "help": "resolution of the Viewer", + "name": "resolution", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Viewport", + "help": "Fullscreen mode", + "name": "fullscreen", + "type": "bool" + }, + { + "defaultValue": "Perspective", + "group": "Camera", + "help": "Camera mode", + "name": "cameraMode", + "type": "OptionsGroup" + }, + { + "defaultValue": "Ray casting", + "group": "Selection", + "help": "The method used to pick objects", + "name": "objectPickingMethod", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the bounding box of selected nodes", + "name": "showSelectedNodeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the bounding box when components selected", + "name": "showSelectedObjectBoundingBox", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the positions when a components with 'position' are selected", + "name": "showSelectedObjectPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the surfaces when components with surface topology are selected", + "name": "showSelectedObjectSurfaces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the volumes when components with volume topology are selected", + "name": "showSelectedObjectVolumes", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the position's indices for components with positions are selected", + "name": "showSelectedObjectIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Selection", + "help": "Scale factor for the rendering of selected object", + "name": "showSelectedVisualScaling", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Setting" + } + }, + "description": "Configuration for the Viewer of your application.\n" + }, + { + "className": "Visual3DText", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "Visual3DText", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visual3DText", + "templateName": "", + "typeName": "Visual3DText" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Test to display", + "name": "text", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "3d position", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "text scale", + "name": "scale", + "type": "f" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "text color. (default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "perform depth test", + "name": "depthTest", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Display 3D camera-oriented text.\n" + }, + { + "className": "VisualBoundingBox", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualBoundingBox", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualBoundingBox", + "templateName": "", + "typeName": "VisualBoundingBox" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1 1 0 1", + "group": "", + "help": "Color of the lines of the box.", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the lines of the box.", + "name": "thickness", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Display an Axis Aligned Bounding Box (AABB).\n" + }, + { + "className": "VisualGrid", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualGrid", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualGrid", + "templateName": "", + "typeName": "VisualGrid" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "z", + "group": "", + "help": "Plane of the grid\n- x: The grid is oriented in the plane defined by the equation x=0\n- y: The grid is oriented in the plane defined by the equation y=0\n- z: The grid is oriented in the plane defined by the equation z=0", + "name": "plane", + "type": "SelectableItem" + }, + { + "defaultValue": "10", + "group": "", + "help": "Size of the squared grid", + "name": "size", + "type": "f" + }, + { + "defaultValue": "16", + "group": "", + "help": "Number of subdivisions", + "name": "nbSubdiv", + "type": "i" + }, + { + "defaultValue": "0.341176 0.341176 0.341176 1", + "group": "", + "help": "Color of the lines in the grid. default=(0.34,0.34,0.34,1.0)", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the lines in the grid", + "name": "thickness", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Display a simple grid.\n" + }, + { + "className": "VisualManagerPass", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualManagerPass", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManager" + ], + "shortName": "visualManagerPass", + "templateName": "", + "typeName": "VisualManagerPass" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set the resolution factor for the output pass. default value:1.0", + "name": "factor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "if true, this pass will be displayed on screen (only one renderPass in the scene must be defined as renderToScreen)", + "name": "renderToScreen", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "name the output texture", + "name": "outputName", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Render pass element: render the relevant tagged objects in a FBO.\n" + }, + { + "className": "VisualManagerSecondaryPass", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualManagerSecondaryPass", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManagerPass" + ], + "shortName": "visualManagerSecondaryPass", + "templateName": "", + "typeName": "VisualManagerSecondaryPass" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set the resolution factor for the output pass. default value:1.0", + "name": "factor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "if true, this pass will be displayed on screen (only one renderPass in the scene must be defined as renderToScreen)", + "name": "renderToScreen", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "name the output texture", + "name": "outputName", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input passes used as source textures", + "name": "input_tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "output reference tag (use it if the resulting fbo is used as a source for another secondary pass)", + "name": "output_tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fragFilename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "OglShader", + "help": "Shader to apply for compositing", + "name": "shader" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Chain different rendering pass, for compositing.\n" + }, + { + "className": "VisualModelImpl", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualModelImpl", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel", + "VisualState,Vec<3u,double>,double>>" + ], + "shortName": "visualModelImpl", + "templateName": "Vec3d", + "typeName": "VisualModelImpl" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if rest positions must be initialized with initial positions", + "name": "initRestPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normal smoothing groups should be read from file", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normals should be updated at each iteration", + "name": "updateNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tangents should be computed at startup", + "name": "computeTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if tangents should be updated at each iteration", + "name": "updateTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if topological changes should be handled", + "name": "handleDynamicTopology", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if UV seams should be handled even when duplicate UVs are merged", + "name": "fixMergedUVSeams", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep and draw lines (false by default)", + "name": "keepLines", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "vertices of the model (only if vertices have multiple normals/texcoords, otherwise positions are used)", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "coordinates of the texture", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "tangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "bitangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "edges of the model", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "triangles of the model", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "quads of the model", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": " Path to an ogl model", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the Texture", + "name": "texturename", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Translation of the object", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Rotation of the object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Initial Scale of the object", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "1 1", + "group": "", + "help": "Scale of the texture", + "name": "scaleTex", + "type": "Vec2f" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Translation of the texture", + "name": "translationTex", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Material", + "name": "material", + "type": "Material" + }, + { + "defaultValue": "0", + "group": "", + "help": "Give Texture Coordinates without the texture binding", + "name": "putOnlyTexCoords", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "When sRGB rendering is enabled, is the texture in sRGB colorspace?", + "name": "srgbTexturing", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Groups of triangles and quads using a given material", + "name": "groups", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Generic visual model. If a viewer is active it will replace the VisualModel alias, otherwise nothing will be displayed.\n" + }, + { + "className": "VisualModelOBJExporter", + "creator": { + "": { + "class": { + "categories": [ + "Exporter" + ], + "className": "VisualModelOBJExporter", + "namespaceName": "sofa::component::_visualmodelobjexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "visualModelOBJExporter", + "templateName": "", + "typeName": "VisualModelOBJExporter" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Export the scene under the Wavefront OBJ format.When several frames are exported the file name have the following pattern: outfile000.obj outfile001.obj.\n" + }, + { + "className": "VisualPointCloud", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualPointCloud", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualPointCloud", + "templateName": "Rigid3d", + "typeName": "VisualPointCloud>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The position of the points to display", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "The draw mode:\n- Point: Coordinates are displayed with points\n- Sphere: Coordinates are displayed using spheres\n- Frame: Coordinates are displayed using oriented frames", + "name": "drawMode", + "type": "SelectableItem" + }, + { + "defaultValue": "1", + "group": "", + "help": "The size of the points and frames", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "The radius list of the spheres", + "name": "sphereRadius", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The color of the points", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show the indices of the points", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "The scale of the indices", + "name": "indicesScale", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "The color of the indices", + "name": "indicesColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + }, + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualPointCloud", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualPointCloud", + "templateName": "Vec3d", + "typeName": "VisualPointCloud,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The position of the points to display", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "The draw mode:\n- Point: Coordinates are displayed with points\n- Sphere: Coordinates are displayed using spheres", + "name": "drawMode", + "type": "SelectableItem" + }, + { + "defaultValue": "1", + "group": "", + "help": "The size of the points and frames", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "The radius list of the spheres", + "name": "sphereRadius", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The color of the points", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show the indices of the points", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "The scale of the indices", + "name": "indicesScale", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "The color of the indices", + "name": "indicesColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Render a point cloud.\n" + }, + { + "className": "VisualStyle", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "VisualStyle", + "namespaceName": "sofa::component::visual", + "parents": [ + "BaseVisualStyle" + ], + "shortName": "visualStyle", + "templateName": "", + "typeName": "VisualStyle" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Display Flags", + "name": "displayFlags", + "type": "DisplayFlags" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Edit the visual style.\n Allowed values for displayFlags data are a combination of the following:\nshowAll, hideAll,\n showVisual, hideVisual,\n showVisualModels, hideVisualModels,\n showBehavior, hideBehavior,\n showBehaviorModels, hideBehaviorModels,\n showForceFields, hideForceFields,\n showInteractionForceFields, hideInteractionForceFields\n showMapping, hideMapping\n showMappings, hideMappings\n showMechanicalMappings, hideMechanicalMappings\n showCollision, hideCollision\n showCollisionModels, hideCollisionModels\n showBoundingCollisionModels, hideBoundingCollisionModels\n showOptions hideOptions\n showRendering hideRendering\n showNormals hideNormals\n showWireframe hideWireframe\n" + }, + { + "className": "VisualTransform", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualTransform", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualTransform", + "templateName": "", + "typeName": "VisualTransform" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Transformation to apply", + "name": "transform", + "type": "RigidCoord3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to apply transform to all nodes below", + "name": "recursive", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Visually apply a (translation,rotation) transformation to visual elements rendering within a node or a sub-graph.\n" + }, + { + "className": "VisualVectorField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualVectorField", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualVectorField", + "templateName": "Vec3d", + "typeName": "VisualVectorField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Starting position of the rendered vectors", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of vectors to render", + "name": "vector", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scaling factor applied on vectors for rendering", + "name": "vectorScale", + "type": "d" + }, + { + "defaultValue": "Line", + "group": "Visualization", + "help": "Draw mode for the vectors- Line: Coordinates are displayed using lines\n- Cylinder: Coordinates are displayed using cylinders\n- Arrow: Coordinates are displayed using arrows", + "name": "drawMode", + "type": "SelectableItem" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Color of the vectors", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Render a vector field.\n" + }, + { + "className": "VoidMapping", + "creator": { + "": { + "class": { + "categories": [ + "Mapping" + ], + "className": "VoidMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping" + ], + "shortName": "voidMapping", + "templateName": "", + "typeName": "VoidMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Special mapping that 'map' points for void (no input DOF). This is useful to be able to create animated objects mixed with real DOFs.\n" + }, + { + "className": "VolumeFromTetrahedrons", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "VolumeFromTetrahedrons", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "volumeFromTetrahedrons", + "templateName": "Vec3d", + "typeName": "VolumeFromTetrahedrons,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context mechanical.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "tetras", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "hexas", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "The computed volume.", + "name": "volume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will update the volume at each time step of the simulation.", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the mechanical", + "name": "mechanical" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "This component computes the volume of a given volumetric mesh.\n" + }, + { + "className": "VolumeFromTriangles", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "VolumeFromTriangles", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "volumeFromTriangles", + "templateName": "Rigid3d", + "typeName": "VolumeFromTriangles>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context mechanical.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "The volume is only relevant if the surface is closed.", + "name": "volume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will update the volume at each time step of the simulation.", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the mechanical", + "name": "mechanical" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "VolumeFromTriangles", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "volumeFromTriangles", + "templateName": "Vec3d", + "typeName": "VolumeFromTriangles,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context mechanical.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "The volume is only relevant if the surface is closed.", + "name": "volume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will update the volume at each time step of the simulation.", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the mechanical", + "name": "mechanical" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "This component computes the volume of a given closed surfacic mesh.\n" + }, + { + "className": "VolumeMapping", + "creator": { + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "VolumeMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "volumeMap", + "templateName": "Vec3d,Vec1d", + "typeName": "VolumeMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping each tetrahedron in a topology to a scalar value representing its volume.\n" + }, + { + "className": "VoxelGridLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "VoxelGridLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "VoxelLoader" + ], + "shortName": "voxelGridLoader", + "templateName": "", + "typeName": "VoxelGridLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the nodes loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra loaded", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Dimension of one voxel", + "name": "voxelSize", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Resolution of the voxel file", + "name": "resolution", + "type": "Vec3i" + }, + { + "defaultValue": "0 0 0 65535 65535 65535", + "group": "", + "help": "Region of interest (xmin, ymin, zmin, xmax, ymax, zmax)", + "name": "ROI", + "type": "Vec6i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Header size in bytes", + "name": "header", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Header size in bytes", + "name": "segmentationHeader", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "indices of the hexa in the grid.", + "name": "idxInRegularGrid", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Background values (to be ignored)", + "name": "bgValue", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Active data values", + "name": "dataValue", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Interpret voxel as either hexa or points", + "name": "generateHexa", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Voxel loader based on RAW files.\n" + }, + { + "className": "WarpPreconditioner", + "creator": { + "RotationMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "WarpPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "warpPreconditioner", + "templateName": "RotationMatrixd", + "typeName": "WarpPreconditioner,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to build the warp conditioner", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear system solver wrapping another (precomputed) linear solver by a per-node rotation matrix.\n" + }, + { + "className": "WriteState", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "WriteState", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "writeState", + "templateName": "", + "typeName": "WriteState" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag enabling output of X vector", + "name": "writeX", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling output of X0 vector", + "name": "writeX0", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling output of V vector", + "name": "writeV", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling output of F vector", + "name": "writeF", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "set time to write outputs (by default export at t=0)", + "name": "time", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "period between outputs", + "name": "period", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "set the position DOFs to write", + "name": "DOFsX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "set the velocity DOFs to write", + "name": "DOFsV", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "stop the simulation when the given threshold is reached", + "name": "stopAt", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set the period to measure the kinetic energy increase", + "name": "keperiod", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Write State vectors to file at each timestep.\n" + }, + { + "className": "WriteTopology", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "WriteTopology", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "writeTopology", + "templateName": "", + "typeName": "WriteTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag enabling output of common topology containers.", + "name": "writeContainers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling output of specific shell topology containers.", + "name": "writeShellContainers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between outputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "set time to write outputs", + "name": "time", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "period between outputs", + "name": "period", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Write topology containers information to file at each timestep.\n" + } +] \ No newline at end of file diff --git a/examples/scenes/factory_dump.py b/examples/scenes/factory_dump.py new file mode 100644 index 0000000..3e37ab6 --- /dev/null +++ b/examples/scenes/factory_dump.py @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- +import Sofa +import json + +def createScene(root): + with open("dump.json","w+t", encoding="utf-8") as file: + file.write(Sofa.Core.ObjectFactory.dump_json()) \ No newline at end of file diff --git a/python/.sofa_blender/components_descriptions.json b/python/.sofa_blender/components_descriptions.json new file mode 100644 index 0000000..e69de29 diff --git a/python/component_descriptions.json b/python/component_descriptions.json new file mode 100644 index 0000000..65e9ac8 --- /dev/null +++ b/python/component_descriptions.json @@ -0,0 +1,120488 @@ +[ + { + "className": "AMDOrderingMethod", + "creator": { + "": { + "class": { + "categories": [ + "OrderingMethod" + ], + "className": "AMDOrderingMethod", + "namespaceName": "sofa::component::linearsolver::ordering", + "parents": [ + "BaseEigenOrderingMethod>" + ], + "shortName": "aMDOrderingMethod", + "templateName": "", + "typeName": "AMDOrderingMethod" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Ordering" + } + }, + "description": "Approximate minimum degree ordering implemented in the Eigen library.\n" + }, + { + "className": "APIVersion", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "APIVersion", + "namespaceName": "sofa::component::sceneutility::_apiversion_", + "parents": [ + "BaseObject" + ], + "shortName": "aPIVersion", + "templateName": "", + "typeName": "APIVersion" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "25.12.99", + "group": "", + "help": "The API Level of the scene ('17.06', '17.12', '18.06', ...)", + "name": "level", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "Specify the APIVersion of the component used in a scene.\n" + }, + { + "className": "AddDataRepository", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "AddDataRepository", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "BaseAddResourceRepository" + ], + "shortName": "addDataRepository", + "templateName": "", + "typeName": "AddDataRepository" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path to add to the pool of resources", + "name": "path", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "Add a path to DataRepository.\n" + }, + { + "className": "AddFrameButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "AddFrameButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "addFrameButtonSetting", + "templateName": "", + "typeName": "AddFrameButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Button setting adding a frame to a skinned model.\n" + }, + { + "className": "AddPluginRepository", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "AddPluginRepository", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "BaseAddResourceRepository" + ], + "shortName": "addPluginRepository", + "templateName": "", + "typeName": "AddPluginRepository" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path to add to the pool of resources", + "name": "path", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "Add a path to PluginRepository.\n" + }, + { + "className": "AddRecordedCameraButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "AddRecordedCameraButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "addRecordedCameraButtonSetting", + "templateName": "", + "typeName": "AddRecordedCameraButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Save Camera's View Point Button configuration.\n" + }, + { + "className": "AffineMovementProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AffineMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "affineMovementProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "AffineMovementProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the mesh", + "name": "meshIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin time of the bilinear constraint", + "name": "beginConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End time of the bilinear constraint", + "name": "endConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "rotation applied to border points", + "name": "rotation", + "type": "Mat3x3d" + }, + { + "defaultValue": "", + "group": "", + "help": "quaternion applied to border points", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "translation applied to border points", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "draw constrained points", + "name": "drawConstrainedPoints", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AffineMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "affineMovementProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "AffineMovementProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the mesh", + "name": "meshIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin time of the bilinear constraint", + "name": "beginConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End time of the bilinear constraint", + "name": "endConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "rotation applied to border points", + "name": "rotation", + "type": "Mat3x3d" + }, + { + "defaultValue": "", + "group": "", + "help": "quaternion applied to border points", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "translation applied to border points", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "draw constrained points", + "name": "drawConstrainedPoints", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Constraint the movement by a rigid transform.\n" + }, + { + "className": "AngularSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "AngularSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField>" + ], + "shortName": "angularSpringFF", + "templateName": "Rigid3d", + "typeName": "AngularSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "index of nodes controlled by the angular springs", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angular stiffness for the controlled nodes", + "name": "angularStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angular limit (max; min) values where the force applies", + "name": "limit", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color", + "name": "springColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Angular springs applied to rotational degrees of freedom of a rigid body or frame.\n" + }, + { + "className": "AnimationLoopParallelScheduler", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "AnimationLoopParallelScheduler", + "namespaceName": "multithreading::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "animationLoopParallelScheduler", + "templateName": "", + "typeName": "AnimationLoopParallelScheduler" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel animation loop, using the Intel tbb library.\n" + }, + { + "className": "AreaMapping", + "creator": { + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "AreaMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "areaMap", + "templateName": "Vec3d,Vec1d", + "typeName": "AreaMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping each triangle in a topology to a scalar value representing its area.\n" + }, + { + "className": "AsyncSparseLDLSolver", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "AsyncSparseLDLSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "SparseLDLSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "asyncSparseLDLSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "AsyncSparseLDLSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the solver will reuse the precomputed symbolic decomposition, meaning that it will store the shape of [factor matrix] on the first step, or when its shape changes, and then it will only update its coefficients. When the shape of the matrix changes, a new factorization is computed.If false, the solver will compute the entire decomposition at each step", + "name": "precomputeSymbolicDecomposition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of non-zero values in the lower triangular matrix of the factorization. The lower, the faster the system is solved.", + "name": "L_nnz", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allow assembly of the linear system", + "name": "enableAssembly", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "AsyncSparseLDLSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "SparseLDLSolver,FullVector,NoThreadManager>" + ], + "shortName": "asyncSparseLDLSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "AsyncSparseLDLSolver,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the solver will reuse the precomputed symbolic decomposition, meaning that it will store the shape of [factor matrix] on the first step, or when its shape changes, and then it will only update its coefficients. When the shape of the matrix changes, a new factorization is computed.If false, the solver will compute the entire decomposition at each step", + "name": "precomputeSymbolicDecomposition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of non-zero values in the lower triangular matrix of the factorization. The lower, the faster the system is solved.", + "name": "L_nnz", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allow assembly of the linear system", + "name": "enableAssembly", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Asynchronous direct Linear Solver using a Sparse LDL^T factorization.\n" + }, + { + "className": "AttachBodyButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "AttachBodyButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "attachBodyButtonSetting", + "templateName": "", + "typeName": "AttachBodyButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Stiffness of the spring to attach a particule", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn spring: if >0 an arrow will be drawn", + "name": "arrowSize", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Show factor size of the JointSpringForcefield when interacting with rigids", + "name": "showFactorSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Attach Body Button configuration.\n" + }, + { + "className": "AttachProjectiveConstraint", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Rigid2d", + "typeName": "AttachProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "AttachProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "AttachProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "AttachProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "AttachProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "PairInteractionProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "attachProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "AttachProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the source points on the first model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points on the second model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects the constraint vertices of both object1 and object2 towards their average degrees of freedom and derivatives. If false, the position of the object1 are projected onto the object2. Therefore, object2 only follows object1 without affecting the motion of object1", + "name": "twoWay", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotations free (only used for Rigid DOFs)", + "name": "freeRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to keep rotation of the last attached point free (only used for Rigid DOFs)", + "name": "lastFreeRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to use rest rotations local offsets (only used for Rigid DOFs)", + "name": "restRotations", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position at which the attach constraint should become inactive", + "name": "lastPos", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction from lastPos at which the attach coustraint should become inactive", + "name": "lastDir", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "true to clamp particles at lastPos instead of freeing them.", + "name": "clamp", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "the constraint become inactive if the distance between the points attached is bigger than minDistance.", + "name": "minDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of position", + "name": "positionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of velocity", + "name": "velocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "IN: Factor applied to projection of force/acceleration", + "name": "responseFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of factors adapting the application of the constraint per pair of points (0 -> the constraint is released. 1 -> the constraint is fully constrained)", + "name": "constraintFactor", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given pair of particles, projecting the positions of the second particles to the first ones.\n" + }, + { + "className": "AugmentedLagrangianConstraint", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "AugmentedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "BaseContactLagrangianConstraint,Vec<3u,double>,double>,AugmentedLagrangianContactParameters>" + ], + "shortName": "augmentedLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "AugmentedLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "AugmentedLagrangianConstraint\n" + }, + { + "className": "AverageCoord", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "AverageCoord", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "averageCoord", + "templateName": "Rigid2d", + "typeName": "AverageCoord>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "indices of the coordinates to average", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "index of the vector (default value corresponds to core::vec_id::write_access::position )", + "name": "vecId", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "average of the values with the given indices in the given coordinate vector \n(default value corresponds to the average coord of the mechanical context)", + "name": "average", + "type": "RigidCoord2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "AverageCoord", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "averageCoord", + "templateName": "Rigid3d", + "typeName": "AverageCoord>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "indices of the coordinates to average", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "index of the vector (default value corresponds to core::vec_id::write_access::position )", + "name": "vecId", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "average of the values with the given indices in the given coordinate vector \n(default value corresponds to the average coord of the mechanical context)", + "name": "average", + "type": "RigidCoord3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "AverageCoord", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "averageCoord", + "templateName": "Vec2d", + "typeName": "AverageCoord,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "indices of the coordinates to average", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "index of the vector (default value corresponds to core::vec_id::write_access::position )", + "name": "vecId", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "average of the values with the given indices in the given coordinate vector \n(default value corresponds to the average coord of the mechanical context)", + "name": "average", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "AverageCoord", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "averageCoord", + "templateName": "Vec3d", + "typeName": "AverageCoord,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "indices of the coordinates to average", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "index of the vector (default value corresponds to core::vec_id::write_access::position )", + "name": "vecId", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "average of the values with the given indices in the given coordinate vector \n(default value corresponds to the average coord of the mechanical context)", + "name": "average", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Compute the average of coordinates.\n" + }, + { + "className": "BDFOdeSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "BDFOdeSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "BaseLinearMultiStepMethod" + ], + "shortName": "bDFOdeSolver", + "templateName": "", + "typeName": "BDFOdeSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Order of the numerical method", + "name": "order", + "type": "L" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to stiffness, > 0", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass, > 0", + "name": "rayleighMass", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + }, + { + "destinationTypeName": "NewtonRaphsonSolver", + "help": "Link to a Newton-Raphson solver to solve the nonlinear equation produced by this numerical method", + "name": "newtonSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Velocity-based ODE solver using Backward Differentiation Formula (BDF), at any order, supporting variable time step size.\n" + }, + { + "className": "BTDLinearSolver", + "creator": { + "BTDMatrix6d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "BTDLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,BlockVector<6ul,double>,NoThreadManager>" + ], + "shortName": "bTDLinearSolver", + "templateName": "BTDMatrix6d", + "typeName": "BTDLinearSolver,BlockVector<6ul,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump system state at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display debug information about subpartSolve computation", + "name": "showProblem", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Allows for the computation of a subpart of the system", + "name": "subpartSolve", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "verification of the subpartSolve", + "name": "verification", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Linear system solver using Thomas Algorithm for Block Tridiagonal matrices.\n" + }, + { + "className": "BVHNarrowPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "BVHNarrowPhase", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "NarrowPhaseDetection" + ], + "shortName": "bVHNarrowPhase", + "templateName": "", + "typeName": "BVHNarrowPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Narrow phase collision detection based on boundary volume hierarchy.\n" + }, + { + "className": "BackgroundSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "BackgroundSetting", + "namespaceName": "sofa::component::setting", + "parents": [ + "ConfigurationSetting" + ], + "shortName": "backgroundSetting", + "templateName": "", + "typeName": "BackgroundSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Color of the background", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "Image to be used as background", + "name": "image", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Setting" + } + }, + "description": "Background setting.\n" + }, + { + "className": "BarycentricMapping", + "creator": { + "Vec3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "BarycentricMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>>>" + ], + "shortName": "barycentricMap", + "templateName": "Vec3d,Rigid3d", + "typeName": "BarycentricMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use the rest position of the input and output models to initialize the mapping", + "name": "useRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "TopologyBarycentricMapper", + "help": "Internal mapper created depending on the type of topology", + "name": "mapper" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology container (usually the surrounding domain).", + "name": "input_topology" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology container (usually the immersed domain).", + "name": "output_topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "BarycentricMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "barycentricMap", + "templateName": "Vec3d,Vec3d", + "typeName": "BarycentricMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use the rest position of the input and output models to initialize the mapping", + "name": "useRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "TopologyBarycentricMapper", + "help": "Internal mapper created depending on the type of topology", + "name": "mapper" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology container (usually the surrounding domain).", + "name": "input_topology" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology container (usually the immersed domain).", + "name": "output_topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Mapping using barycentric coordinates of the child with respect to cells of its parent.\nMapping using barycentric coordinates of the child with respect to cells of its parent.\n" + }, + { + "className": "BeamFEMForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "BeamFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic::_beamfemforcefield_", + "parents": [ + "BaseLinearElasticityFEMForceField>" + ], + "shortName": "beamFEMFF", + "templateName": "Rigid3d", + "typeName": "BeamFEMForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal element data", + "name": "beamsData", + "type": "vector>BeamInfo,CPUMemoryManager>BeamInfo>>" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "radius of the section", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "inner radius of the section for hollow beams", + "name": "radiusInner", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "apply the forcefield to a subset list of beam segments. If no segment defined, forcefield applies to the whole topology", + "name": "listSegment", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "use symmetric assembly of the matrix K", + "name": "useSymmetricAssembly", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Beam finite elements.\n" + }, + { + "className": "BeamLinearMapping", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "BeamLinearMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "beamLinearMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "BeamLinearMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "true if initial coordinates are in the beam local coordinate system (i.e. a point at (10,0,0) is on the DOF number 10, whereas if this is false it is at whatever position on the beam where the distance from the initial DOF is 10)", + "name": "localCoord", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the positions and velocities of points attached to a beam using linear interpolation between DOFs.\n" + }, + { + "className": "BeamLinearMapping_mt", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "BeamLinearMapping_mt", + "namespaceName": "multithreading::component::mapping::linear", + "parents": [ + "BeamLinearMapping,StdVectorTypes,Vec<3u,double>,double>>" + ], + "shortName": "beamLinearMap_mt", + "templateName": "Rigid3d,Vec3d", + "typeName": "BeamLinearMapping_mt,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "true if initial coordinates are in the beam local coordinate system (i.e. a point at (10,0,0) is on the DOF number 10, whereas if this is false it is at whatever position on the beam where the distance from the initial DOF is 10)", + "name": "localCoord", + "type": "bool" + }, + { + "defaultValue": "32", + "group": "", + "help": "minimum number of Beam points for task creation", + "name": "granularity", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Set the positions and velocities of points attached to a beam using linear interpolation between DOFs.\n" + }, + { + "className": "BilateralLagrangianConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "BilateralLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "PairInteractionConstraint>" + ], + "shortName": "bilateralLagrangianConstraint", + "templateName": "Rigid3d", + "typeName": "BilateralLagrangianConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "index of the constraint on the first model (object1)", + "name": "first_point", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "index of the constraint on the second model (object2)", + "name": "second_point", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Relative position to maintain between attached points (optional)", + "name": "rest_vector", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "control constraint activation (true by default)", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the initial difference in orientation (only for rigids)", + "name": "keepOrientationDifference", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Apply this factor to the constraint force to enable incremental loading. This value should be in the interval [0.0, 1.0].", + "name": "load", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the first topology container", + "name": "topology1" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the second topology container", + "name": "topology2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "BilateralLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "PairInteractionConstraint,Vec<3u,double>,double>>" + ], + "shortName": "bilateralLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "BilateralLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "index of the constraint on the first model (object1)", + "name": "first_point", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "index of the constraint on the second model (object2)", + "name": "second_point", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Relative position to maintain between attached points (optional)", + "name": "rest_vector", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "control constraint activation (true by default)", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the initial difference in orientation (only for rigids)", + "name": "keepOrientationDifference", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Apply this factor to the constraint force to enable incremental loading. This value should be in the interval [0.0, 1.0].", + "name": "load", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the first topology container", + "name": "topology1" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the second topology container", + "name": "topology2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "BilateralLagrangianConstraint defining an holonomic equality constraint (attachment).\n" + }, + { + "className": "BlenderExporter", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Exporter" + ], + "className": "BlenderExporter", + "namespaceName": "sofa::component::_blenderexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "blenderExporter", + "templateName": "Rigid3d", + "typeName": "BlenderExporter>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output path", + "name": "path", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Base name for the output files", + "name": "baseName", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "simulation type (0: soft body, 1: particles, 2:cloth, 3:hair)", + "name": "simulationType", + "type": "i" + }, + { + "defaultValue": "2", + "group": "", + "help": "save the simulation result every step frames", + "name": "step", + "type": "i" + }, + { + "defaultValue": "20", + "group": "", + "help": "number of element by hair strand", + "name": "nbPtsByHair", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + }, + "Vec3d": { + "class": { + "categories": [ + "Exporter" + ], + "className": "BlenderExporter", + "namespaceName": "sofa::component::_blenderexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "blenderExporter", + "templateName": "Vec3d", + "typeName": "BlenderExporter,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output path", + "name": "path", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Base name for the output files", + "name": "baseName", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "simulation type (0: soft body, 1: particles, 2:cloth, 3:hair)", + "name": "simulationType", + "type": "i" + }, + { + "defaultValue": "2", + "group": "", + "help": "save the simulation result every step frames", + "name": "step", + "type": "i" + }, + { + "defaultValue": "20", + "group": "", + "help": "number of element by hair strand", + "name": "nbPtsByHair", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Export the simulation result as blender point cache files.\n" + }, + { + "className": "BlockGaussSeidelConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "BlockGaussSeidelConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "BuiltConstraintSolver" + ], + "shortName": "blockGaussSeidelConstraintSolver", + "templateName": "", + "typeName": "BlockGaussSeidelConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of iterative algorithm", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute graphs of errors and forces during resolution", + "name": "computeGraphs", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's violation at each step of the resolution", + "name": "graphViolations", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraints", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraintGroups", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraint groups", + "name": "currentIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current error", + "name": "currentError", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Build compliances concurrently", + "name": "multithreading", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use SVD decomposiiton of the compliance matrix to project singular values smaller than regularization to the regularization term. Only works with built", + "name": "useSVDForRegularization", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Fraction of the highest singular value bellow which a singular value will be supposed to belong to the nullspace", + "name": "svdSingularValueNullSpaceCriteriaFactor", + "type": "d" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "Absolute value bellow which a component of a normalized base vector will be considered null", + "name": "svdSingularVectorNullSpaceCriteriaFactor", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve Constraint based components using a Block Gauss-Seidel iterative method\n" + }, + { + "className": "BlockJacobiPreconditioner", + "creator": { + "FullVector": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "BlockJacobiPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "blockJacobiPreconditioner", + "templateName": "FullVector", + "typeName": "BlockJacobiPreconditioner,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear solver based on a NxN block diagonal matrix (i.e. block Jacobi preconditioner).\n" + }, + { + "className": "BoxROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI>" + ], + "shortName": "boxROI", + "templateName": "Rigid3d", + "typeName": "BoxROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI,Vec<1u,double>,double>>" + ], + "shortName": "boxROI", + "templateName": "Vec1d", + "typeName": "BoxROI,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI,Vec<2u,double>,double>>" + ], + "shortName": "boxROI", + "templateName": "Vec2d", + "typeName": "BoxROI,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI,Vec<3u,double>,double>>" + ], + "shortName": "boxROI", + "templateName": "Vec3d", + "typeName": "BoxROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "BoxROI", + "namespaceName": "sofa::component::engine::select::boxroi", + "parents": [ + "BaseROI,Vec<6u,double>,double>>" + ], + "shortName": "boxROI", + "templateName": "Vec6d", + "typeName": "BoxROI,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes, each defined by two 3D points : xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "List of boxes defined by 3 points (p0, p1, p2) and a depth distance \nA parallelogram will be defined by (p0, p1, p2, p3 = p0 + (p2-p1)). \nThe box will finaly correspond to the parallelogram extrusion of depth/2 \nalong its normal and depth/2 in the opposite direction. ", + "name": "orientedBox", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine selecting the any primitives (vertex/edge/triangle/quad/tetrahedron/hexahedron) inside given boxes.\n" + }, + { + "className": "BruteForceBroadPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "BruteForceBroadPhase", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BroadPhaseDetection" + ], + "shortName": "bruteForceBroadPhase", + "templateName": "", + "typeName": "BruteForceBroadPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "if not empty, objects that do not intersect this bounding-box will be ignored", + "name": "box", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Broad phase collision detection using extensive pair-wise tests.\n" + }, + { + "className": "BruteForceDetection", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "BruteForceDetection", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BaseObject" + ], + "shortName": "bruteForceDetection", + "templateName": "", + "typeName": "BruteForceDetection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Combination of brute force broad phase and BVH narrow phase collision detection.\n" + }, + { + "className": "CCDTightInclusionIntersection", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "CCDTightInclusionIntersection", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "BaseProximityIntersection" + ], + "shortName": "cCDTightInclusionIntersection", + "templateName": "", + "typeName": "CCDTightInclusionIntersection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Distance above which the intersection computations ignores the proximity pair. This distance can also be used in some broad phase algorithms to reduce the search area", + "name": "alarmDistance", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Distance below which a contact is created", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "None", + "group": "", + "help": "Data used for continuous collision detection taken into {'None','Inertia','FreeMotion'}. If 'None' then no CCD is used, if 'Inertia' then only inertia will be used to compute the collision detection and if 'FreeMotion' then the free motion will be used. Note that if 'FreeMotion' is selected, you cannot use the option 'parallelCollisionDetectionAndFreeMotion' in the FreeMotionAnimationLoop", + "name": "continuousCollisionType", + "type": "OptionsGroup" + }, + { + "defaultValue": "1e-10", + "group": "", + "help": "tolerance used by the tight inclusion CCD algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maxIterations used by the tight inclusion CCD algorithm", + "name": "maxIterations", + "type": "l" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "A set of methods to compute (for constraint methods) if two primitives are close enough to consider they collide\n" + }, + { + "className": "CGLinearSolver", + "creator": { + "CompressedRowSparseMatrixMat2x2d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat2x2d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat4x4d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat4x4d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat6x6d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat6x6d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat8x8d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixMat8x8d", + "typeName": "CGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "CGLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "FullMatrix", + "typeName": "CGLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "GraphScattered": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver" + ], + "shortName": "cGLinearSolver", + "templateName": "GraphScattered", + "typeName": "CGLinearSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "cGLinearSolver", + "templateName": "SparseMatrix", + "typeName": "CGLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "Linear system solver using the conjugate gradient iterative algorithm\n" + }, + { + "className": "COLAMDOrderingMethod", + "creator": { + "": { + "class": { + "categories": [ + "OrderingMethod" + ], + "className": "COLAMDOrderingMethod", + "namespaceName": "sofa::component::linearsolver::ordering", + "parents": [ + "BaseEigenOrderingMethod>" + ], + "shortName": "cOLAMDOrderingMethod", + "templateName": "", + "typeName": "COLAMDOrderingMethod" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Ordering" + } + }, + "description": "Column approximate minimum degree ordering implemented in the Eigen library.\n" + }, + { + "className": "Camera", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "Camera", + "namespaceName": "sofa::component::visual", + "parents": [ + "BaseCamera" + ], + "shortName": "camera", + "templateName": "", + "typeName": "Camera" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's position", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's orientation", + "name": "orientation", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's look at", + "name": "lookAt", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Distance between camera and look at", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "45", + "group": "", + "help": "Camera's FOV", + "name": "fieldOfView", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Camera's zNear", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Camera's zFar", + "name": "zFar", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute Z clip planes (Near and Far) according to the bounding box", + "name": "computeZClip", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "minBBox", + "name": "minBBox", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "maxBBox", + "name": "maxBBox", + "type": "Vec3d" + }, + { + "defaultValue": "800", + "group": "", + "help": "widthViewport", + "name": "widthViewport", + "type": "I" + }, + { + "defaultValue": "600", + "group": "", + "help": "heightViewport", + "name": "heightViewport", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera Type (0 = Perspective, 1 = Orthographic)", + "name": "projectionType", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "", + "help": "Camera activated ?", + "name": "activated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the lookAt point always fixed", + "name": "fixedLookAt", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "A Camera that render the scene from a given location & orientation.\n" + }, + { + "className": "CenterOfMassMapping", + "creator": { + "Rigid2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<2u,double>,double>>>" + ], + "shortName": "centerOfMassMap", + "templateName": "Rigid2d,Vec2d", + "typeName": "CenterOfMassMapping,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "centerOfMassMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "CenterOfMassMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the point to the center of mass of the DOFs it is attached to\n" + }, + { + "className": "CenterOfMassMulti2Mapping", + "creator": { + "Vec3d,Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMulti2Mapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "centerOfMassMulti2Mapping", + "templateName": "Vec3d,Rigid3d,Vec3d", + "typeName": "CenterOfMassMulti2Mapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s) (1st Data type)", + "name": "input1" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s) (2nd Data type)", + "name": "input2" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the point to the center of mass of the DOFs it is attached to.\n" + }, + { + "className": "CenterOfMassMultiMapping", + "creator": { + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "centerOfMassMultiMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "CenterOfMassMultiMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "centerOfMassMultiMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "CenterOfMassMultiMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "CenterOfMassMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "centerOfMassMultiMap", + "templateName": "Vec3d,Vec3d", + "typeName": "CenterOfMassMultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the point to the center of mass of the DOFs it is attached to.\n" + }, + { + "className": "CenterPointTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "CenterPointTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "centerPointTopologicalMapping", + "templateName": "", + "typeName": "CenterPointTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where each primitive in the input topology will be mapped to a point in the output topology.\n" + }, + { + "className": "CentralDifferenceSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "CentralDifferenceSolver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "centralDifferenceSolver", + "templateName": "", + "typeName": "CentralDifferenceSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "Explicit time integrator using central difference (also known as Verlet of Leap-frog).\n" + }, + { + "className": "CholeskySolver", + "creator": { + "FullMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CholeskySolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "choleskySolver", + "templateName": "FullMatrix", + "typeName": "CholeskySolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "CholeskySolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "choleskySolver", + "templateName": "SparseMatrix", + "typeName": "CholeskySolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver based on Cholesky factorization, for dense matrices.\n" + }, + { + "className": "ClipPlane", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "ClipPlane", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel" + ], + "shortName": "clipPlane", + "templateName": "", + "typeName": "ClipPlane" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Point crossed by the clipping plane", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "1 0 0", + "group": "", + "help": "Normal of the clipping plane, pointing toward the clipped region", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Clipping plane OpenGL ID", + "name": "id", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Control whether the clipping plane should be applied or not", + "name": "active", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Define arbitrary clipping plane into OpenGL.\n" + }, + { + "className": "ClusteringEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ClusteringEngine", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "clusteringEngine", + "templateName": "Vec3d", + "typeName": "ClusteringEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use available topology to compute neighborhood.", + "name": "useTopo", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "Neighborhood range.", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "Neighborhood range (for non mechanical particles).", + "name": "fixedRadius", + "type": "d" + }, + { + "defaultValue": "-1", + "group": "Inputs", + "help": "Number of clusters (-1 means that all input points are selected).", + "name": "number", + "type": "i" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input positions of fixed (non mechanical) particles.", + "name": "fixedPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input rest positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed clusters.", + "name": "cluster", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "import precomputed clusters", + "name": "inFile", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "export clusters", + "name": "outFile", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Group points into overlapping clusters according to a user defined number of clusters and radius.\n" + }, + { + "className": "CollisionPipeline", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "CollisionPipeline", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "Pipeline" + ], + "shortName": "collisionPipeline", + "templateName": "", + "typeName": "CollisionPipeline" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display extra information at each computation step. (default=false)", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the detected collisions. (default=false)", + "name": "draw", + "type": "bool" + }, + { + "defaultValue": "6", + "group": "", + "help": "Max depth of bounding trees. (default=6, min=?, max=?)", + "name": "depth", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "The default collision detection and modeling pipeline.\n" + }, + { + "className": "CollisionResponse", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "CollisionResponse", + "namespaceName": "sofa::component::collision::response::contact", + "parents": [ + "ContactManager" + ], + "shortName": "collisionResponse", + "templateName": "", + "typeName": "CollisionResponse" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "contact response class", + "name": "response", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "contact response parameters (syntax: name1=value1&name2=value2&...)", + "name": "responseParams", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Response.Contact" + } + }, + "description": "Default class to create reactions to the collisions.\n" + }, + { + "className": "CompareState", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "CompareState", + "namespaceName": "sofa::component::playback", + "parents": [ + "ReadState" + ], + "shortName": "compareState", + "templateName": "", + "typeName": "CompareState" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between inputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Transformation", + "help": "scale the input mechanical object", + "name": "scalePos", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "rotate the input mechanical object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "translate the input mechanical object", + "name": "translation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Compare State vectors from a reference frame to the associated Mechanical State.\n" + }, + { + "className": "CompareTopology", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "CompareTopology", + "namespaceName": "sofa::component::playback", + "parents": [ + "ReadTopology" + ], + "shortName": "compareTopology", + "templateName": "", + "typeName": "CompareTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "input file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between inputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Compare Topology containers from a reference frame to the associated Topology.\n" + }, + { + "className": "ComplementaryROI", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ComplementaryROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "complementaryROI", + "templateName": "Vec3d", + "typeName": "ComplementaryROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of sets to complement", + "name": "nbSet", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "indices of the point in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "points in the ROI", + "name": "pointsInROI", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the points that are NOT in the input sets.\n" + }, + { + "className": "CompositeLinearSystem", + "creator": { + "BlockDiagonalMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "BlockDiagonalMatrixMat3x3d", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat2x2d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat2x2d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat4x4d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat4x4d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat6x6d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat6x6d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat8x8d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixMat8x8d", + "typeName": "CompositeLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "DiagonalMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "DiagonalMatrix", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "FullMatrix", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "GraphScattered": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem" + ], + "shortName": "compositeLinearSystem", + "templateName": "GraphScattered", + "typeName": "CompositeLinearSystem" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "RotationMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "RotationMatrixd", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "CompositeLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "compositeLinearSystem", + "templateName": "SparseMatrix", + "typeName": "CompositeLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "List of linear systems to assemble", + "name": "linearSystems" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "Among the list of linear systems, which one is to be used by the linear solver", + "name": "solverLinearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Matrix-free (unbuilt) linear system.\nComponent acting like a linear system, but delegates the linear system functionalities to a list of real linear systems.\n" + }, + { + "className": "CompositingVisualLoop", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "CompositingVisualLoop", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "DefaultVisualManagerLoop" + ], + "shortName": "compositingVisualLoop", + "templateName": "", + "typeName": "CompositingVisualLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "shaders/compositing.vert", + "group": "", + "help": "Set the vertex shader filename to load", + "name": "vertFilename", + "type": "string" + }, + { + "defaultValue": "shaders/compositing.frag", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fragFilename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "Node", + "help": "Link to the scene's node where the rendering will take place", + "name": "targetNode" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Visual loop enabling multipass rendering. Needs multiple fbo data and a compositing shader.\n" + }, + { + "className": "ConicalForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConicalForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "conicalFF", + "templateName": "Vec3d", + "typeName": "ConicalForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "cone center", + "name": "coneCenter", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "cone height", + "name": "coneHeight", + "type": "Vec3d" + }, + { + "defaultValue": "10", + "group": "", + "help": "cone angle", + "name": "coneAngle", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0 1 1", + "group": "", + "help": "cone color. (default=0.0,0.0,0.0,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Outward repulsion applied by a cone geometry.\n" + }, + { + "className": "ConstantForceField", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "constantFF", + "templateName": "Rigid2d", + "typeName": "ConstantForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "RigidDeriv2d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "constantFF", + "templateName": "Rigid3d", + "typeName": "ConstantForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "RigidDeriv3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "constantFF", + "templateName": "Vec1d", + "typeName": "ConstantForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "Vec1d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "constantFF", + "templateName": "Vec2d", + "typeName": "ConstantForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "Vec2d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "constantFF", + "templateName": "Vec3d", + "typeName": "ConstantForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ConstantForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "constantFF", + "templateName": "Vec6d", + "typeName": "ConstantForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices where the forces are applied", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Concerned DOFs indices are numbered from the end of the MState DOFs vector. (default=false)", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "vector containing the force amplitude applied at each node", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force info", + "help": "total force for all points, will be distributed uniformly over points", + "name": "totalForce", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing. (default=0)", + "name": "showArrowSize", + "type": "d" + }, + { + "defaultValue": "0.2 0.9 0.3 1", + "group": "Visualization", + "help": "Color for object display (default: [0.2,0.9,0.3,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Constant forces applied to given degrees of freedom.\n" + }, + { + "className": "ConstantSparsityPatternSystem", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "ConstantSparsityPatternSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "MatrixLinearSystem,FullVector>" + ], + "shortName": "constantSparsityPatternSystem", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "ConstantSparsityPatternSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Linear system taking advantage of the constant sparsity pattern of the global matrix to speed up the matrix assembly. Do not use if sparsity pattern is not constant (topological changes, ...).\n" + }, + { + "className": "ConstantSparsityProjectionMethod", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "ConstantSparsityProjectionMethod", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "MatrixProjectionMethod>" + ], + "shortName": "constantSparsityProjectionMethod", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "ConstantSparsityProjectionMethod>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if mapping jacobians are considered constant over time. They are computed only the first time.", + "name": "areJacobiansConstant", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute the matrix product in parallel", + "name": "parallelProduct", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Matrix mapping computing the matrix projection taking advantage of the constant sparsity pattern.\n" + }, + { + "className": "ConstraintAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "ConstraintAnimationLoop", + "namespaceName": "sofa::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "constraintAnimationLoop", + "templateName": "", + "typeName": "ConstraintAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display time for each important step of ConstraintAnimationLoop.", + "name": "displayTime", + "type": "bool" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Tolerance of the Gauss-Seidel", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Maximum number of iterations of the Gauss-Seidel", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute the collisions first (to support penality-based contacts)", + "name": "doCollisionsFirst", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Double the buffer dedicated to the constraint problem to make it accessible to another thread", + "name": "doubleBuffer", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Apply new scheme where compliance is progressively corrected", + "name": "schemeCorrection", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If the total computational time T < dt, sleep(dt-T)", + "name": "realTimeCompensation", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Component.AnimationLoop" + } + }, + "description": "Constraint animation loop manager\n" + }, + { + "className": "ConstraintAttachButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "ConstraintAttachButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "constraintAttachButtonSetting", + "templateName": "", + "typeName": "ConstraintAttachButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Attach an object to the mouse using lagrangian multiplier.\n" + }, + { + "className": "ContactListener", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "ContactListener", + "namespaceName": "sofa::component::collision::response::contact", + "parents": [ + "BaseObject" + ], + "shortName": "contactListener", + "templateName": "", + "typeName": "ContactListener" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Response.Contact" + } + }, + "description": "Utility component to retrieve information about contacts.\n" + }, + { + "className": "CubeCollisionModel", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "CubeCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "cubeCollisionModel", + "templateName": "", + "typeName": "CubeCollisionModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model representing a cube.\n" + }, + { + "className": "CubeTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "CubeTopology", + "namespaceName": "sofa::component::topology::container::constant", + "parents": [ + "MeshTopology" + ], + "shortName": "cubeTopology", + "templateName": "", + "typeName": "CubeTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "x grid resolution", + "name": "nx", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "y grid resolution", + "name": "ny", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "z grid resolution", + "name": "nz", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "include internal points (allow a one-to-one mapping between points from RegularGridTopology and CubeTopology)", + "name": "internalPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "split corner points to have planar normals", + "name": "splitNormals", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Constant" + } + }, + "description": "Surface topology of a cube in 3D (points, edges and quads).\n" + }, + { + "className": "CylinderCollisionModel", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "CylinderCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "cylinderCollisionModel", + "templateName": "Rigid3d", + "typeName": "CylinderCollisionModel>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of each cylinder", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The cylinder heights", + "name": "heights", + "type": "vector" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "The default radius", + "name": "defaultRadius", + "type": "d" + }, + { + "defaultValue": "2", + "group": "", + "help": "The default height", + "name": "defaultHeight", + "type": "d" + }, + { + "defaultValue": "0 1 0", + "group": "", + "help": "The default local axis cylinder is modeled around", + "name": "defaultLocalAxis", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model which represents a set of rigid cylinders.\n" + }, + { + "className": "CylinderGridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "CylinderGridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "GridTopology" + ], + "shortName": "cylinderGridTopology", + "templateName": "", + "typeName": "CylinderGridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution. (default = 2 2 2)", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Hexahedra is needed during init (default=true)", + "name": "computeHexaList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Quad is needed during init (default=true)", + "name": "computeQuadList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Triangles is needed during init (default=true)", + "name": "computeTriangleList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Lines is needed during init (default=true)", + "name": "computeEdgeList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Points is needed during init (default=true)", + "name": "computePointList", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, virtual texture coordinates will be generated using 3D interpolation (default=false).", + "name": "createTexCoords", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Center of the cylinder", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 1", + "group": "", + "help": "Main direction of the cylinder", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of the cylinder", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Length of the cylinder along its axis", + "name": "length", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Cylinder grid in 3D.\n" + }, + { + "className": "CylinderVisualModel", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "CylinderVisualModel", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel", + "VisualState,Vec<3u,double>,double>>" + ], + "shortName": "cylinderVisualModel", + "templateName": "", + "typeName": "CylinderVisualModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of the cylinder.", + "name": "radius", + "type": "f" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Color of the cylinders.", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Visualize a set of cylinders.\n" + }, + { + "className": "DampVelocitySolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "DampVelocitySolver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "dampVelocitySolver", + "templateName": "", + "typeName": "DampVelocitySolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.99", + "group": "", + "help": "Factor used to reduce the velocities. Typically between 0 and 1.", + "name": "rate", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Threshold under which the velocities are canceled.", + "name": "threshold", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "Reduce the velocities.\n" + }, + { + "className": "DataDisplay", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "DataDisplay", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel", + "VisualState,Vec<3u,double>,double>>" + ], + "shortName": "dataDisplay", + "templateName": "", + "typeName": "DataDisplay" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Keep the maximal range through all timesteps", + "name": "maximalRange", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with nodes", + "name": "pointData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with triangles", + "name": "triangleData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with quads", + "name": "quadData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with nodes per triangle", + "name": "pointTriangleData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data associated with nodes per quad", + "name": "pointQuadData", + "type": "vector" + }, + { + "defaultValue": "0 0 0 1", + "group": "", + "help": "Color used for NaN values (default=[0.0,0.0,0.0,1.0])", + "name": "colorNaN", + "type": "RGBAColor" + }, + { + "defaultValue": "1 -1", + "group": "", + "help": "Clamp to this values (if max>min)", + "name": "userRange", + "type": "Vec2f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Current min range", + "name": "currentMin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Current max range", + "name": "currentMax", + "type": "d" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Shininess for rendering point-based data [0,128]. <0 means no specularity", + "name": "shininess", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "transparency draw objects with transparency, the value varies between 0. and 1. Where 1. means no transparency and 0 full transparency", + "name": "transparency", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "OglColorMap", + "help": "link to the color map", + "name": "colorMap" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Color rendering of data associated with a mesh.\n" + }, + { + "className": "DataExchange", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "Vec3d", + "typeName": "DataExchange>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Vec3f": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "Vec3f", + "typeName": "DataExchange>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "Vec3f" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "Vec3f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "bool": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "bool", + "typeName": "DataExchange" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "d", + "typeName": "DataExchange" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "f": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "f", + "typeName": "DataExchange" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "vector": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DataExchange", + "namespaceName": "sofa::core", + "parents": [ + "BaseObject" + ], + "shortName": "dataExchange", + "templateName": "vector", + "typeName": "DataExchange>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "source object to copy", + "name": "from", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "destination object to copy", + "name": "to", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Component for data memory sharing in the context of multi-threading applications\n" + }, + { + "className": "DefaultAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "DefaultAnimationLoop", + "namespaceName": "sofa::simulation", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "defaultAnimationLoop", + "templateName": "", + "typeName": "DefaultAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, solves all the ODEs in parallel", + "name": "parallelODESolving", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Simulation.Core" + } + }, + "description": "Simulation loop, created by default when the user does not define one in the scene. This loop first computes the collision detection and then solves the physics.\n\nThis loop triggers the following steps:\n- build and solve all linear systems in the scene : collision and time integration to compute the new values of the dofs\n- update the context (dt++)\n- update the mappings\n- update the bounding box (volume covering all objects of the scene)\n" + }, + { + "className": "DefaultVisualManagerLoop", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "DefaultVisualManagerLoop", + "namespaceName": "sofa::simulation", + "parents": [ + "VisualLoop" + ], + "shortName": "defaultVisualManagerLoop", + "templateName": "", + "typeName": "DefaultVisualManagerLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "Node", + "help": "Link to the scene's node where the rendering will take place", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Simulation.Core" + } + }, + "description": "Manager of the visual loop, created by default when the user does not define one in the scene.\n" + }, + { + "className": "DeformableOnRigidFrameMapping", + "creator": { + "Vec3d,Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DeformableOnRigidFrameMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "deformableOnRigidFrameMapping", + "templateName": "Vec3d,Rigid3d,Vec3d", + "typeName": "DeformableOnRigidFrameMapping,Vec<3u,double>,double>,StdRigidTypes<3u,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index", + "name": "index", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index starts from the end of input DOFs vector", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dest dofs per entry dof", + "name": "repartition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "are the output DOFs initially expressed in global coordinates", + "name": "globalToLocalCoords", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale factor applied on the angular force accumulated on the rigid model", + "name": "rootAngularForceScaleFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale factor applied on the linear force accumulated on the rigid model", + "name": "rootLinearForceScaleFactor", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s) (1st Data type)", + "name": "input1" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s) (2nd Data type)", + "name": "input2" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Set the positions and velocities of points attached to a rigid parent.\n" + }, + { + "className": "DiagonalMass", + "creator": { + "Rigid2d,Rigid2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "diagonalMass", + "templateName": "Rigid2d,Rigid2d", + "typeName": "DiagonalMass,StdRigidTypes<2u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Rigid2d,Rigid3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "diagonalMass", + "templateName": "Rigid2d,Rigid3d", + "typeName": "DiagonalMass,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "diagonalMass", + "templateName": "Rigid3d,Rigid3d", + "typeName": "DiagonalMass,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec1d,Vec1d", + "typeName": "DiagonalMass,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec1d,Vec2d", + "typeName": "DiagonalMass,Vec<1u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec1d,Vec3d", + "typeName": "DiagonalMass,Vec<1u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec2d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<2u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec2d,Vec3d", + "typeName": "DiagonalMass,Vec<2u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "DiagonalMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<3u,double>,double>>" + ], + "shortName": "diagonalMass", + "templateName": "Vec3d,Vec3d", + "typeName": "DiagonalMass,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify a vector giving the mass of each vertex. \nIf unspecified or wrongly set, the massDensity or totalMass information is used.", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single real and positive value for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp3.0 file to specify the mass parameters", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + } + }, + "description": "Compute a lumped (diagonalized) mass matrix resulting from the space integration of a density over a domain.\n" + }, + { + "className": "DiagonalVelocityDampingForceField", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Rigid2d", + "typeName": "DiagonalVelocityDampingForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Rigid3d", + "typeName": "DiagonalVelocityDampingForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Vec1d", + "typeName": "DiagonalVelocityDampingForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Vec2d", + "typeName": "DiagonalVelocityDampingForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Vec3d", + "typeName": "DiagonalVelocityDampingForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "DiagonalVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "diagonalVelocityDampingFF", + "templateName": "Vec6d", + "typeName": "DiagonalVelocityDampingForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity damping coefficients (by cinematic dof)", + "name": "dampingCoefficient", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Diagonal velocity damping.\n" + }, + { + "className": "DifferenceEngine", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DifferenceEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "differenceEngine", + "templateName": "Vec1d", + "typeName": "DifferenceEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vector", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "vector to subtract to input", + "name": "substractor", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output vector = input-substractor", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DifferenceEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "differenceEngine", + "templateName": "Vec3d", + "typeName": "DifferenceEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vector", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "vector to subtract to input", + "name": "substractor", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output vector = input-substractor", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Computing the difference between two vector of dofs.\n" + }, + { + "className": "DilateEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DilateEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "dilateEngine", + "templateName": "Vec3d", + "typeName": "DilateEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input mesh triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input mesh quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "point normals", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "point thickness", + "name": "thickness", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "distance to move the points (positive for dilatation, negative for erosion)", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "minimal thickness to enforce", + "name": "minThickness", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Dilates a given mesh by moving vertices along their normal.\n" + }, + { + "className": "DirectSAP", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "DirectSAP", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BaseObject" + ], + "shortName": "directSAP", + "templateName": "", + "typeName": "DirectSAP" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Collision detection using sweep and prune.\n" + }, + { + "className": "DirectSAPNarrowPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "DirectSAPNarrowPhase", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "NarrowPhaseDetection" + ], + "shortName": "directSAPNarrowPhase", + "templateName": "", + "typeName": "DirectSAPNarrowPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Show only boxes which will be sent to narrow phase", + "name": "showOnlyInvestigatedBoxes", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "number of pairs of elements sent to narrow phase", + "name": "nbPairs", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Narrow phase of the collision detection using sweep and prune.\n" + }, + { + "className": "DirectionProjectiveConstraint", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "DirectionProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "directionProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "DirectionProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices the particles to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Direction of the line", + "name": "direction", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "DirectionProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "directionProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "DirectionProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices the particles to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Direction of the line", + "name": "direction", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given particles to their initial positions.\n" + }, + { + "className": "DirectionalLight", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "DirectionalLight", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "Light" + ], + "shortName": "directionalLight", + "templateName": "", + "typeName": "DirectionalLight" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Set the color of the light. (default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Set size for shadow texture ", + "name": "shadowTextureSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Light Source", + "name": "drawSource", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZNear", + "name": "zNear", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZFar", + "name": "zFar", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Enable Shadow from this light", + "name": "shadowsEnabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Turn on Soft Shadow from this light", + "name": "softShadows", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Shadow Factor (decrease/increase darkness)", + "name": "shadowFactor", + "type": "f" + }, + { + "defaultValue": "0.05", + "group": "", + "help": "[Shadowing] (VSM only) Light bleeding parameter", + "name": "VSMLightBleeding", + "type": "f" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "[Shadowing] (VSM only) Minimum variance parameter", + "name": "VSMMinVariance", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Texture unit for the generated shadow texture", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "0 0 -1", + "group": "", + "help": "Set the direction of the light", + "name": "direction", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "A directional light illuminating the scene with parallel rays of light (can cast shadows).\n" + }, + { + "className": "DiscreteIntersection", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "DiscreteIntersection", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "Intersection" + ], + "shortName": "discreteIntersection", + "templateName": "", + "typeName": "DiscreteIntersection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "Detect intersection using discrete methods.\n" + }, + { + "className": "DisplacementMatrixEngine", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DisplacementMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DisplacementTransformEngine,Mat<4u,4u,double>>" + ], + "shortName": "displacementMatrixEngine", + "templateName": "Rigid3d", + "typeName": "DisplacementMatrixEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position", + "name": "x0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Current position", + "name": "x", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Displacement transforms with respect to original rigid positions", + "name": "displaceMats", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Scale transformation added to the rigid transformation", + "name": "scales", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Converts a vector of Rigid to a vector of displacement matrices.\n" + }, + { + "className": "DisplacementTransformEngine", + "creator": { + "Rigid3d,Mat4x4d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DisplacementTransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "displacementTransformEngine", + "templateName": "Rigid3d,Mat4x4d", + "typeName": "DisplacementTransformEngine,Mat<4u,4u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position", + "name": "x0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Current position", + "name": "x", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Displacement transforms with respect to original rigid positions", + "name": "displacements", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Rigid3d,RigidCoord3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "DisplacementTransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "displacementTransformEngine", + "templateName": "Rigid3d,RigidCoord3d", + "typeName": "DisplacementTransformEngine,RigidCoord<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position", + "name": "x0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Current position", + "name": "x", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Displacement transforms with respect to original rigid positions", + "name": "displacements", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Converts a vector of Rigid to a vector of displacement transforms.\n" + }, + { + "className": "DistanceFromTargetMapping", + "creator": { + "Rigid3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceFromTargetMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceFromTargetMap", + "templateName": "Rigid3d,Vec1d", + "typeName": "DistanceFromTargetMapping,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the parent points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Positions to compute the distances from", + "name": "targetPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display.", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceFromTargetMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceFromTargetMap", + "templateName": "Vec1d,Vec1d", + "typeName": "DistanceFromTargetMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the parent points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Positions to compute the distances from", + "name": "targetPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display.", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceFromTargetMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceFromTargetMap", + "templateName": "Vec3d,Vec1d", + "typeName": "DistanceFromTargetMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the parent points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Positions to compute the distances from", + "name": "targetPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display.", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping point positions to distances from target points.\n" + }, + { + "className": "DistanceMapping", + "creator": { + "Rigid3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceMap", + "templateName": "Rigid3d,Vec1d", + "typeName": "DistanceMapping,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "if 'computeDistance = true', then rest length of each element equal 0, otherwise rest length is the initial length of each of them", + "name": "computeDistance", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "distanceMap", + "templateName": "Vec3d,Vec1d", + "typeName": "DistanceMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "if 'computeDistance = true', then rest length of each element equal 0, otherwise rest length is the initial length of each of them", + "name": "computeDistance", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping each connected pair of Degrees of Freedom (DoFs) in a topology to a scalar value representing the distance between them.\n" + }, + { + "className": "DistanceMultiMapping", + "creator": { + "Rigid3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceMultiMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "MultiMapping,StdVectorTypes,Vec<1u,double>,double>>" + ], + "shortName": "distanceMultiMap", + "templateName": "Rigid3d,Vec1d", + "typeName": "DistanceMultiMapping,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "if 'computeDistance = true', then rest length of each element equal 0, otherwise rest length is the initial length of each of them", + "name": "computeDistance", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceMultiMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "MultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + ], + "shortName": "distanceMultiMap", + "templateName": "Vec3d,Vec1d", + "typeName": "DistanceMultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "if 'computeDistance = true', then rest length of each element equal 0, otherwise rest length is the initial length of each of them", + "name": "computeDistance", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest lengths of the connections", + "name": "restLengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping point positions from several mechanical states to distances (in distance unit).\n" + }, + { + "className": "DistanceToPlaneMapping", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Rigid2d", + "typeName": "DistanceToPlaneMapping>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Rigid3d", + "typeName": "DistanceToPlaneMapping>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Vec2d", + "typeName": "DistanceToPlaneMapping,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Vec3d", + "typeName": "DistanceToPlaneMapping,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec6d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "DistanceToPlaneMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "distanceToPlaneMap", + "templateName": "Vec6d", + "typeName": "DistanceToPlaneMapping,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal of the plane to compute the distance to", + "name": "planeNormal", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "", + "help": "A point belonging to the plane", + "name": "planePoint", + "type": "Vec6d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Mapping that computes the distance to a plane\n" + }, + { + "className": "Distances", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "Distances", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "distances", + "templateName": "Vec3d", + "typeName": "Distances,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Frame DOF index on which display values.", + "name": "showMapIndex", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "show the distance for each point of the target point set.", + "name": "showDistancesMap", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "show the distance for each point of the target point set.", + "name": "showGoalDistancesMap", + "type": "bool" + }, + { + "defaultValue": "0.001", + "group": "Visualization", + "help": "Scale to apply on the text.", + "name": "showTextScaleFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "show gradients for each point of the target point set.", + "name": "showGradients", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "scale for the gradients displayed.", + "name": "showGradientsScaleFactor", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "translation offset between the topology and the point set.", + "name": "offset", + "type": "Vec3d" + }, + { + "defaultValue": "Geodesic", + "group": "", + "help": "type of distance to compute for inserted frames.", + "name": "d_distanceType", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "initialize the target MechanicalObject from the grid.", + "name": "initTarget", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "initialize the target MechanicalObject from the grid using this step.", + "name": "initTargetStep", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "Correspondence between the segmented value and the frames.", + "name": "zonesFramePair", + "type": "map,allocator>>" + }, + { + "defaultValue": "100", + "group": "", + "help": "Max value used to initialize the harmonic distance grid.", + "name": "harmonicMaxValue", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "file containing the result of the computation of the distances", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "path to the goal point set topology", + "name": "targetPath", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "path to the grid used to compute the distances", + "name": "hexaContainerPath", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Compute distances based on a grid.\n" + }, + { + "className": "DynamicSparseGridGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "DynamicSparseGridGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "dynamicSparseGridGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "DynamicSparseGridGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Hexa indices", + "name": "showHexaIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the Hexahedron in the topology", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the hexahedra (between 0 and 1; if <1.0, it produces gaps between the hexahedra)", + "name": "drawScaleHexahedra", + "type": "f" + }, + { + "defaultValue": "1 0.5 0 1", + "group": "Visualization", + "help": "RGB code color used to draw hexahedra.", + "name": "drawColorHexahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "DynamicSparseGridGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "dynamicSparseGridGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "DynamicSparseGridGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Hexa indices", + "name": "showHexaIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the Hexahedron in the topology", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the hexahedra (between 0 and 1; if <1.0, it produces gaps between the hexahedra)", + "name": "drawScaleHexahedra", + "type": "f" + }, + { + "defaultValue": "1 0.5 0 1", + "group": "Visualization", + "help": "RGB code color used to draw hexahedra.", + "name": "drawColorHexahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Dynamic sparse grid geometry algorithms.\n" + }, + { + "className": "DynamicSparseGridTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "DynamicSparseGridTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetTopologyContainer" + ], + "shortName": "dynamicSparseGridTopologyContainer", + "templateName": "", + "typeName": "DynamicSparseGridTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force the creation of a set of quads associated with the hexahedra", + "name": "createQuadArray", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "voxel grid resolution", + "name": "resolution", + "type": "Vec3i" + }, + { + "defaultValue": "", + "group": "", + "help": "values indexed in the Regular Grid", + "name": "valuesIndexedInRegularGrid", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "values indexed in the topology", + "name": "valuesIndexedInTopology", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "indices in the Regular Grid", + "name": "idxInRegularGrid", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "map between id in the Regular Grid and index in the topology", + "name": "idInRegularGrid2IndexInTopo", + "type": "map,allocator>>" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Size of the Voxels", + "name": "voxelSize", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Dynamic sparse grid geometry container.\n" + }, + { + "className": "DynamicSparseGridTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "DynamicSparseGridTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetTopologyModifier" + ], + "shortName": "dynamicSparseGridTopologyModifier", + "templateName": "", + "typeName": "DynamicSparseGridTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Remove isolated DOFs", + "name": "removeIsolated", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Dynamic sparse grid geometry modifier.\n" + }, + { + "className": "Edge2QuadTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Edge2QuadTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "edge2QuadTopologicalMapping", + "templateName": "", + "typeName": "Edge2QuadTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Discretization of created circles", + "name": "nbPointsOnEachCircle", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of created circles in yz plan", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If greater than 0., radius in focal axis of created ellipses", + "name": "radiusFocal", + "type": "d" + }, + { + "defaultValue": "0 0 1", + "group": "", + "help": "In case of ellipses", + "name": "focalAxis", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input edges for the topological mapping: by default, all considered", + "name": "edgeList", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normal ? (Inverse point order when creating quad)", + "name": "flipNormals", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + }, + { + "destinationTypeName": "QuadSetTopologyContainer", + "help": "Output container storing Quads", + "name": "toQuadContainer" + }, + { + "destinationTypeName": "QuadSetTopologyModifier", + "help": "Output modifier handling Quads", + "name": "toQuadModifier" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where EdgeSetTopology is converted to QuadSetTopology.\n" + }, + { + "className": "EdgePressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "EdgePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "edgePressureFF", + "templateName": "Vec3d", + "typeName": "EdgePressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "map between edge indices and their pressure", + "name": "edgePressureMap", + "type": "vector,Vec<3u,double>,double>>EdgePressureInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgePressureInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of edges separated with commas where a pressure is applied", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edges where a pressure is applied", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction for the plane selection of edges", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum distance from the origin along the normal direction", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum distance from the origin along the normal direction", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "pressure intensity on edge normal", + "name": "p_intensity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Binormal of the 2D plane", + "name": "binormal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw arrows of edge pressures", + "name": "showForces", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Apply a force on edges, distributed on the edge nodes.\n" + }, + { + "className": "EdgeSetGeometryAlgorithms", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Rigid2d", + "typeName": "EdgeSetGeometryAlgorithms>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Rigid3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Rigid3d", + "typeName": "EdgeSetGeometryAlgorithms>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec1d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms,Vec<1u,double>,double>>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Vec1d", + "typeName": "EdgeSetGeometryAlgorithms,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "EdgeSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "edgeSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "EdgeSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to an edge topology.\n" + }, + { + "className": "EdgeSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetTopologyContainer" + ], + "shortName": "edgeSetTopologyContainer", + "templateName": "", + "typeName": "EdgeSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container for an edge topology.\n" + }, + { + "className": "EdgeSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "EdgeSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "PointSetTopologyModifier" + ], + "shortName": "edgeSetTopologyModifier", + "templateName": "", + "typeName": "EdgeSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to an edge topology.\n" + }, + { + "className": "EigenSimplicialLDLT", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSimplicialLDLT", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver,MainSimplicialLDLTFactory>" + ], + "shortName": "eigenSimplicialLDLT", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "EigenSimplicialLDLT>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSimplicialLDLT", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver" + ], + "shortName": "eigenSimplicialLDLT", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "EigenSimplicialLDLT" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse LDL^T factorization.\n" + }, + { + "className": "EigenSimplicialLLT", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSimplicialLLT", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver,MainSimplicialLLTFactory>" + ], + "shortName": "eigenSimplicialLLT", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "EigenSimplicialLLT>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSimplicialLLT", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver" + ], + "shortName": "eigenSimplicialLLT", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "EigenSimplicialLLT" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse LL^T factorization.\n" + }, + { + "className": "EigenSparseLU", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSparseLU", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver,MainLUFactory>" + ], + "shortName": "eigenSparseLU", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "EigenSparseLU>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSparseLU", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver" + ], + "shortName": "eigenSparseLU", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "EigenSparseLU" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse LU factorization.\n" + }, + { + "className": "EigenSparseQR", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSparseQR", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver,MainQRFactory>" + ], + "shortName": "eigenSparseQR", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "EigenSparseQR>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "EigenSparseQR", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "EigenDirectSparseSolver" + ], + "shortName": "eigenSparseQR", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "EigenSparseQR" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse QR factorization.\n" + }, + { + "className": "EllipsoidForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "EllipsoidForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "ellipsoidFF", + "templateName": "Vec1d", + "typeName": "EllipsoidForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of contacts", + "name": "contacts", + "type": "vector,Vec<1u,double>,double>>Contact,CPUMemoryManager,Vec<1u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid center", + "name": "center", + "type": "Vec1d" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid radius", + "name": "vradius", + "type": "Vec1d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness (positive to repulse outward, negative inward)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "", + "help": "ellipsoid color. (default=0,0.5,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "EllipsoidForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "ellipsoidFF", + "templateName": "Vec2d", + "typeName": "EllipsoidForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of contacts", + "name": "contacts", + "type": "vector,Vec<2u,double>,double>>Contact,CPUMemoryManager,Vec<2u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid center", + "name": "center", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid radius", + "name": "vradius", + "type": "Vec2d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness (positive to repulse outward, negative inward)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "", + "help": "ellipsoid color. (default=0,0.5,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "EllipsoidForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "ellipsoidFF", + "templateName": "Vec3d", + "typeName": "EllipsoidForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of contacts", + "name": "contacts", + "type": "vector,Vec<3u,double>,double>>Contact,CPUMemoryManager,Vec<3u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid center", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid radius", + "name": "vradius", + "type": "Vec3d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness (positive to repulse outward, negative inward)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "", + "help": "ellipsoid color. (default=0,0.5,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Outward / inward repulsion applied by an ellipsoid geometry.\n" + }, + { + "className": "EulerExplicitSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "EulerExplicitSolver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "eulerExplicitSolver", + "templateName": "", + "typeName": "EulerExplicitSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true (default), the velocities are updated before the positions and the method is symplectic, more robust. If false, the positions are updated before the velocities (standard Euler, less robust).", + "name": "symplectic", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "A simple explicit time integrator.\n" + }, + { + "className": "EulerImplicitSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "EulerImplicitSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "OdeSolver", + "LinearSolverAccessor" + ], + "shortName": "eulerImplicitSolver", + "templateName": "", + "typeName": "EulerImplicitSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to stiffness, > 0", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass, > 0", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Velocity decay coefficient (no decay if null)", + "name": "vdamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use backward Euler scheme for first order ODE system, which means that only the first derivative of the DOFs (state) appears in the equation. Higher derivatives are absent", + "name": "firstOrder", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Boolean to use the trapezoidal scheme instead of the implicit Euler scheme and get second order accuracy in time (false by default)", + "name": "trapezoidalScheme", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Apply ConstraintSolver (requires a ConstraintSolver in the same node as this solver, disabled by by default for now)", + "name": "solveConstraint", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the residual is computed at the end of the solving", + "name": "computeResidual", + "type": "bool" + }, + { + "defaultValue": "1.79769e+308", + "group": "", + "help": "Residual norm at the end of the free-motion solving", + "name": "residual", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Time integrator using implicit backward Euler scheme.\n" + }, + { + "className": "ExtrudeEdgesAndGenerateQuads", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ExtrudeEdgesAndGenerateQuads", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "extrudeEdgesAndGenerateQuads", + "templateName": "Vec3d", + "typeName": "ExtrudeEdgesAndGenerateQuads,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1 0 0", + "group": "", + "help": "Direction along which to extrude the curve", + "name": "extrudeDirection", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Thickness of the extruded volume in the opposite direction of the normals", + "name": "thicknessIn", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the extruded volume in the direction of the normals", + "name": "thicknessOut", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of sections / steps in the extrusion", + "name": "numberOfSections", + "type": "i" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Position coordinates along the initial curve", + "name": "curveVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the edges of the curve to extrude", + "name": "curveEdges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Coordinates of the extruded vertices", + "name": "extrudedVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of all edges generated during the extrusion", + "name": "extrudedEdges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of all quads generated during the extrusion", + "name": "extrudedQuads", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine extruding an edge-based curve into a quad surface patch.\n" + }, + { + "className": "ExtrudeQuadsAndGenerateHexas", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ExtrudeQuadsAndGenerateHexas", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "extrudeQuadsAndGenerateHexas", + "templateName": "Vec3d", + "typeName": "ExtrudeQuadsAndGenerateHexas,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "is Visible ?", + "name": "isVisible", + "type": "bool" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Apply a scaling factor to the extruded mesh", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Thickness of the extruded volume in the opposite direction of the normals", + "name": "thicknessIn", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the extruded volume in the direction of the normals", + "name": "thicknessOut", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of slices / steps in the extrusion", + "name": "numberOfSlices", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will inverse point order when creating hexa", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Position coordinates of the surface", + "name": "surfaceVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the quads of the surface to extrude", + "name": "surfaceQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Coordinates of the extruded vertices", + "name": "extrudedVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of new surface quads generated during the extrusion", + "name": "extrudedSurfaceQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of all quads generated during the extrusion", + "name": "extrudedQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of hexahedra generated during the extrusion", + "name": "extrudedHexas", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine extruding a quad-based surface into a set of hexahedral elements.\n" + }, + { + "className": "ExtrudeSurface", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ExtrudeSurface", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "extrudeSurface", + "templateName": "Vec3d", + "typeName": "ExtrudeSurface,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "is Visible ?", + "name": "isVisible", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor for the height of the extrusion (based on normal)", + "name": "heightFactor", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle topology (list of BaseMeshTopology::Triangle)", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Position coordinates of the extrusion", + "name": "extrusionVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Position coordinates of the surface", + "name": "surfaceVertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Subset triangle topology used for the extrusion", + "name": "extrusionTriangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the triangles of the surface to extrude", + "name": "surfaceTriangles", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine creating a mesh from the extrusion of the surface of a given mesh.\n" + }, + { + "className": "FastTetrahedralCorotationalForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "FastTetrahedralCorotationalForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "fastTetrahedralCorotationalFF", + "templateName": "Vec3d", + "typeName": "FastTetrahedralCorotationalForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal point data", + "name": "pointInfo", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal tetrahedron data", + "name": "tetrahedronInfo", + "type": "vector,Vec<3u,double>,double>>TetrahedronRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TetrahedronRestInformation>>" + }, + { + "defaultValue": "qr", + "group": "", + "help": " method for rotation computation :\"qr\" (by QR) or \"polar\" or \"polar2\" or \"none\" (Linear elastic) ", + "name": "method", + "type": "string" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": " draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0 0 1 1", + "group": "Visualization", + "help": " draw color for faces 1", + "name": "drawColor1", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "Visualization", + "help": " draw color for faces 2", + "name": "drawColor2", + "type": "RGBAColor" + }, + { + "defaultValue": "0 1 1 1", + "group": "Visualization", + "help": " draw color for faces 3", + "name": "drawColor3", + "type": "RGBAColor" + }, + { + "defaultValue": "0.5 1 1 1", + "group": "Visualization", + "help": " draw color for faces 4", + "name": "drawColor4", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Fast Corotational Tetrahedral Mesh.\n" + }, + { + "className": "FastTriangularBendingSprings", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "FastTriangularBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "fastTriangularBendingSprings", + "templateName": "Vec3d", + "typeName": "FastTriangularBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Bending stiffness of the material", + "name": "bendingStiffness", + "type": "d" + }, + { + "defaultValue": "1e-06", + "group": "", + "help": "Distance under which a spring is not valid", + "name": "minDistValidity", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeSpring,CPUMemoryManager,Vec<3u,double>,double>>EdgeSpring>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a triangular mesh to prevent bending.\n" + }, + { + "className": "FileMessageHandlerComponent", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "FileMessageHandlerComponent", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "BaseObject" + ], + "shortName": "fileMessageHandlerComponent", + "templateName": "", + "typeName": "FileMessageHandlerComponent" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the file into which the message will be saved in.", + "name": "filename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "This component dumps all the messages into a file.\n" + }, + { + "className": "FixPickedParticleButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "FixPickedParticleButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "fixPickedParticleButtonSetting", + "templateName": "", + "typeName": "FixPickedParticleButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + }, + { + "defaultValue": "10000", + "group": "", + "help": "Stiffness of the spring to fix a particule", + "name": "stiffness", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Fix a picked particle in space.\n" + }, + { + "className": "FixedLagrangianConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Rigid3d", + "typeName": "FixedLagrangianConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec1d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<1u,double>,double>>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Vec1d", + "typeName": "FixedLagrangianConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec2d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<2u,double>,double>>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Vec2d", + "typeName": "FixedLagrangianConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<3u,double>,double>>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "FixedLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec6d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "FixedLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<6u,double>,double>>" + ], + "shortName": "fixedLagrangianConstraint", + "templateName": "Vec6d", + "typeName": "FixedLagrangianConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of points to fix", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, fix all points", + "name": "fixAll", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "Lagrangian-based fixation of DOFs of the model.\n" + }, + { + "className": "FixedPlaneProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedPlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedPlaneProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "FixedPlaneProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "normal direction of the plane", + "name": "direction", + "type": "RigidCoord3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum plane distance from the origin", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum plane distance from the origin", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedPlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "fixedPlaneProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "FixedPlaneProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "normal direction of the plane", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum plane distance from the origin", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum plane distance from the origin", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedPlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "fixedPlaneProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "FixedPlaneProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "normal direction of the plane", + "name": "direction", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum plane distance from the origin", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum plane distance from the origin", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Project particles on a given plane.\n" + }, + { + "className": "FixedProjectiveConstraint", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Rigid2d", + "typeName": "FixedProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "FixedProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "FixedProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "FixedProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "FixedProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "fixedProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "FixedProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given particles to their initial positions.\n" + }, + { + "className": "FixedRotationProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedRotationProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedRotationProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "FixedRotationProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent Rotation around X axis", + "name": "FixedXRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent Rotation around Y axis", + "name": "FixedYRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent Rotation around Z axis", + "name": "FixedZRotation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Prevents rotation around x or/and y or/and z axis.\n" + }, + { + "className": "FixedTranslationProjectiveConstraint", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedTranslationProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedTranslationProjectiveConstraint", + "templateName": "Rigid2d", + "typeName": "FixedTranslationProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the fixed points", + "name": "coordinates", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedTranslationProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "fixedTranslationProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "FixedTranslationProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the fixed points", + "name": "coordinates", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "FixedTranslationProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "fixedTranslationProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "FixedTranslationProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the fixed points", + "name": "coordinates", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given rigids to their initial positions but they still can have rotations.\n" + }, + { + "className": "FrameSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "FrameSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField>" + ], + "shortName": "frameSpringFF", + "templateName": "Rigid3d", + "typeName": "FrameSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector>Spring,CPUMemoryManager>Spring>>" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the lawful part of the joint rotation", + "name": "showLawfulTorsion", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the illicit part of the joint rotation", + "name": "showExtraTorsion", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs for Flexibles.\n" + }, + { + "className": "FreeMotionAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "FreeMotionAnimationLoop", + "namespaceName": "sofa::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "freeMotionAnimationLoop", + "templateName": "", + "typeName": "FreeMotionAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "solve separately velocity constraint violations before position constraint violations", + "name": "solveVelocityConstraintFirst", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Multithreading", + "help": "If true, executes free motion step and collision detection step in parallel.", + "name": "parallelCollisionDetectionAndFreeMotion", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Multithreading", + "help": "If true, solves all the ODEs in parallel during the free motion step.", + "name": "parallelODESolving", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "The ConstraintSolver used in this animation loop (required)", + "name": "constraintSolver" + } + ] + }, + "target": "Sofa.Component.AnimationLoop" + } + }, + "description": "\nThe animation loop to use with constraints.\nYou must add this loop at the beginning of the scene if you are using constraints.\"\n" + }, + { + "className": "GIDMeshLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "GIDMeshLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "gIDMeshLoader", + "templateName": "", + "typeName": "GIDMeshLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Load volumetric meshes generated by GID. Some element types are not implemented.\n" + }, + { + "className": "GearSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "GearSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField>" + ], + "shortName": "gearSpringFF", + "templateName": "Rigid3d", + "typeName": "GearSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping", + "name": "spring", + "type": "vector>,CPUMemoryManager>>>" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "period between outputs", + "name": "period", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling reinitialization of the output file at each timestep", + "name": "reinit", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "modify the size of the debug information of a given factor", + "name": "showFactorSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Gear springs for Rigids.\n" + }, + { + "className": "GenerateCylinder", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateCylinder", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateCylinder", + "templateName": "Vec3d", + "typeName": "GenerateCylinder,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points of tetrahedra mesh", + "name": "output_TetrahedraPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points of triangle mesh", + "name": "output_TrianglesPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output triangular mesh", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "weights of rational Bezier triangles", + "name": "BezierTriangleWeights", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "booleans indicating if each Bezier triangle is rational or integral", + "name": "isBezierTriangleRational", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "order of Bezier triangles", + "name": "BezierTriangleDegree", + "type": "L" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "weights of rational Bezier tetrahedra", + "name": "BezierTetrahedronWeights", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "booleans indicating if each Bezier tetrahedron is rational or integral", + "name": "isBezierTetrahedronRational", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "order of Bezier tetrahedra", + "name": "BezierTetrahedronDegree", + "type": "L" + }, + { + "defaultValue": "0.2", + "group": "Inputs", + "help": "input cylinder radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "input cylinder height", + "name": "height", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "cylinder origin point", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "if the cylinder is open at its 2 ends", + "name": "openSurface", + "type": "bool" + }, + { + "defaultValue": "6", + "group": "Inputs", + "help": "Resolution in the circumferential direction", + "name": "resCircumferential", + "type": "L" + }, + { + "defaultValue": "3", + "group": "Inputs", + "help": "Resolution in the radial direction", + "name": "resRadial", + "type": "L" + }, + { + "defaultValue": "5", + "group": "Inputs", + "help": "Resolution in the height direction", + "name": "resHeight", + "type": "L" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine generating a cylindrical tetrahedral mesh.\n" + }, + { + "className": "GenerateGrid", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateGrid", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateGrid", + "templateName": "Vec2d", + "typeName": "GenerateGrid,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh hexahedra", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "the 3 coordinates of the minimum corner", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "the 3 coordinates of the maximum corner", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "3 3 3", + "group": "Inputs", + "help": "the number of cubes in the x,y,z directions. If resolution in the z direction is 0 then a 2D grid is generated", + "name": "resolution", + "type": "Vec3L" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateGrid", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateGrid", + "templateName": "Vec3d", + "typeName": "GenerateGrid,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh hexahedra", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "the 3 coordinates of the minimum corner", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "the 3 coordinates of the maximum corner", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "3 3 3", + "group": "Inputs", + "help": "the number of cubes in the x,y,z directions. If resolution in the z direction is 0 then a 2D grid is generated", + "name": "resolution", + "type": "Vec3L" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine generating a grid tetrahedral or hexahedral mesh.\n" + }, + { + "className": "GenerateRigidMass", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateRigidMass", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateRigidMass", + "templateName": "Rigid3d", + "typeName": "GenerateRigidMass,RigidMass<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "Inputs", + "help": "input: Density of the object", + "name": "density", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input: positions of the vertices", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input: triangles of the mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input: quads of the mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input: polygons of the mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: rigid mass computed", + "name": "rigidMass", + "type": "RigidMass<3u,double>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: mass of the mesh", + "name": "mass", + "type": "d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: volume of the mesh", + "name": "volume", + "type": "d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: the inertia matrix of the mesh", + "name": "inertiaMatrix", + "type": "Mat3x3d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: the gravity center of the mesh", + "name": "massCenter", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output: vector going from the mass center to the space origin", + "name": "centerToOrigin", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine computing the RigidMass of a mesh: mass, volume and inertia matrix.\n" + }, + { + "className": "GenerateSphere", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GenerateSphere", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "generateSphere", + "templateName": "Vec3d", + "typeName": "GenerateSphere,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points of tetrahedra mesh", + "name": "output_TetrahedraPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output mesh tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points of triangle mesh", + "name": "output_TrianglesPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output triangular mesh", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "order of Bezier tetrahedra", + "name": "BezierTetrahedronDegree", + "type": "L" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "weights of rational Bezier tetrahedra", + "name": "BezierTetrahedronWeights", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "booleans indicating if each Bezier tetrahedron is rational or integral", + "name": "isBezierTetrahedronRational", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "order of Bezier triangles", + "name": "BezierTriangleDegree", + "type": "L" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "weights of rational Bezier triangles", + "name": "BezierTriangleWeights", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "booleans indicating if each Bezier triangle is rational or integral", + "name": "isBezierTriangleRational", + "type": "vector" + }, + { + "defaultValue": "0.2", + "group": "", + "help": "input sphere radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "sphere center point", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "Degree of tessellation of each Platonic triangulation", + "name": "tessellationDegree", + "type": "L" + }, + { + "defaultValue": "icosahedron", + "group": "Inputs", + "help": "name of the Platonic triangulation used to create the spherical dome : either \"tetrahedron\", \"octahedron\" or \"icosahedron\"", + "name": "platonicSolid", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine generating a spherical (Bezier) tetrahedral and triangular mesh.\n" + }, + { + "className": "GenericConstraintCorrection", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "GenericConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "BaseConstraintCorrection" + ], + "shortName": "genericConstraintCorrection", + "templateName": "", + "typeName": "GenericConstraintCorrection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the position factor and velocity factor used to calculate compliance matrix", + "name": "complianceFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + } + }, + "description": "Component computing constraint forces within a simulated body using the compliance method.\n" + }, + { + "className": "Gravity", + "creator": { + "": { + "class": { + "categories": [ + "ContextObject" + ], + "className": "Gravity", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ContextObject" + ], + "shortName": "gravity", + "templateName": "", + "typeName": "Gravity" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Gravity in the world coordinate system", + "name": "gravity", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Gravity in world coordinates.\n" + }, + { + "className": "GridMeshCreator", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "GridMeshCreator", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "gridMeshCreator", + "templateName": "", + "typeName": "GridMeshCreator" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "2 2", + "group": "", + "help": "Number of vertices in each direction", + "name": "resolution", + "type": "Vec2i" + }, + { + "defaultValue": "2", + "group": "", + "help": "0: no triangles, 1: alternate triangles, 2: upward triangles, 3: downward triangles", + "name": "trianglePattern", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Procedural creation of a two-dimensional mesh.\n" + }, + { + "className": "GridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "GridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "MeshTopology" + ], + "shortName": "gridTopology", + "templateName": "", + "typeName": "GridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution. (default = 2 2 2)", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Hexahedra is needed during init (default=true)", + "name": "computeHexaList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Quad is needed during init (default=true)", + "name": "computeQuadList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Triangles is needed during init (default=true)", + "name": "computeTriangleList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Lines is needed during init (default=true)", + "name": "computeEdgeList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Points is needed during init (default=true)", + "name": "computePointList", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, virtual texture coordinates will be generated using 3D interpolation (default=false).", + "name": "createTexCoords", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Base class fo a regular grid in 3D.\n" + }, + { + "className": "GroupFilterYoungModulus", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "GroupFilterYoungModulus", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "groupFilterYoungModulus", + "templateName": "Vec3d", + "typeName": "GroupFilterYoungModulus,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Groups", + "name": "groups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Vector of primitives (indices)", + "name": "primitives", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of groups (each element gives its group", + "name": "elementsGroup", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vector of young modulus for each primitive", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mapping between groups and modulus", + "name": "mapGroupModulus", + "type": "string" + }, + { + "defaultValue": "10000", + "group": "", + "help": "Default value if the primitive is not in a group", + "name": "defaultYoungModulus", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "list of young modulus for each group", + "name": "groupModulus", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine defining a vector of young modulus according of a list of defined groups.\n" + }, + { + "className": "HausdorffDistance", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Rigid2d", + "typeName": "HausdorffDistance>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Rigid3d", + "typeName": "HausdorffDistance>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Vec1d", + "typeName": "HausdorffDistance,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Vec2d", + "typeName": "HausdorffDistance,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "HausdorffDistance", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "hausdorffDistance", + "templateName": "Vec3d", + "typeName": "HausdorffDistance,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the first point cloud", + "name": "points1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Input", + "help": "Points belonging to the second point cloud", + "name": "points2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 1 to 2", + "name": "d12", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Distance from point cloud 2 to 1", + "name": "d21", + "type": "d" + }, + { + "defaultValue": "", + "group": "Output", + "help": "Symmetrical Hausdorff distance", + "name": "max", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute every time step", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Compute the Hausdorff distance of two point clouds.\n" + }, + { + "className": "HermiteSplineProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "HermiteSplineProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "hermiteSplineProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "HermiteSplineProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin Time of the motion", + "name": "BeginTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End Time of the motion", + "name": "EndTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "first control point", + "name": "X0", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "first control tangente", + "name": "dX0", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second control point", + "name": "X1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second control tangente", + "name": "dX1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "first interpolation vector", + "name": "SX0", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "second interpolation vector", + "name": "SX1", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "HermiteSplineProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "hermiteSplineProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "HermiteSplineProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin Time of the motion", + "name": "BeginTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End Time of the motion", + "name": "EndTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "first control point", + "name": "X0", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "first control tangente", + "name": "dX0", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second control point", + "name": "X1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second control tangente", + "name": "dX1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "first interpolation vector", + "name": "SX0", + "type": "Vec2d" + }, + { + "defaultValue": "", + "group": "", + "help": "second interpolation vector", + "name": "SX1", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Apply a hermite cubic spline trajectory to given points.\n" + }, + { + "className": "Hexa2QuadTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Hexa2QuadTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "hexa2QuadTopologicalMapping", + "templateName": "", + "typeName": "Hexa2QuadTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normal ? (Inverse point order when creating triangle)", + "name": "flipNormals", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where HexahedronSetTopology is converted to QuadSetTopology\n" + }, + { + "className": "Hexa2TetraTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Hexa2TetraTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "hexa2TetraTopologicalMapping", + "templateName": "", + "typeName": "Hexa2TetraTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Boolean enabling to swapp hexa-edges\n in order to avoid bias effect", + "name": "swapping", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where HexahedronSetTopology is converted to TetrahedronSetTopology\n" + }, + { + "className": "HexahedralFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "HexahedralFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "hexahedralFEMFF", + "templateName": "Vec3d", + "typeName": "HexahedralFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal hexahedron data", + "name": "hexahedronInfo", + "type": "vector,Vec<3u,double>,double>>HexahedronInformation,CPUMemoryManager,Vec<3u,double>,double>>HexahedronInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Hexahedral finite elements.\n" + }, + { + "className": "HexahedralFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "HexahedralFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "Mass,Vec<3u,double>,double>>", + "HexahedralFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "hexahedralFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "HexahedralFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal hexahedron data", + "name": "hexahedronInfo", + "type": "vector,Vec<3u,double>,double>>HexahedronInformation,CPUMemoryManager,Vec<3u,double>,double>>HexahedronInformation>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Total mass per element", + "name": "totalMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass per particle", + "name": "particleMasses", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Lumped masses", + "name": "lumpedMasses", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Hexahedral finite elements with mass\n" + }, + { + "className": "HexahedronCompositeFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "HexahedronCompositeFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::nonuniform", + "parents": [ + "NonUniformHexahedronFEMForceFieldAndMass,Vec<3u,double>,double>>" + ], + "shortName": "hexahedronCompositeFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "HexahedronCompositeFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use virtual finer levels, in order to compte non-uniform stiffness", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Using this ForceField like a Mass? (rather than using a separated Mass)", + "name": "useMass", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does the homogenization is done directly from the finest level to the coarse one?", + "name": "finestToCoarse", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "0->static, 1->constrained static, 2->modal analysis", + "name": "homogenizationMethod", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Is the non-linear, complete interpolation used?", + "name": "completeInterpolation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If SparseGridRamification, are ramifications taken into account?", + "name": "useRamification", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "", + "name": "drawType", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "", + "name": "drawColor", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "Visualization", + "help": "", + "name": "drawSize", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.NonUniform" + } + }, + "description": "Non uniform Hexahedral finite elements.\n" + }, + { + "className": "HexahedronCompositeFEMMapping", + "creator": { + "Mapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>": { + "class": { + "categories": [ + "Mapping" + ], + "className": "HexahedronCompositeFEMMapping", + "namespaceName": "sofa::component::solidmechanics::fem::nonuniform", + "parents": [ + "Mapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + ], + "shortName": "hexahedronCompositeFEMMap", + "templateName": "Mapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>", + "typeName": "HexahedronCompositeFEMMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.NonUniform" + } + }, + "description": "Set the point to the center of mass of the DOFs it is attached to.\n" + }, + { + "className": "HexahedronFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "HexahedronFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>", + "BaseRotationFinder" + ], + "shortName": "hexahedronFEMFF", + "templateName": "Vec3d", + "typeName": "HexahedronFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Hexahedral finite elements.\n" + }, + { + "className": "HexahedronFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "HexahedronFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "Mass,Vec<3u,double>,double>>", + "HexahedronFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "hexahedronFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "HexahedronFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Hexahedral finite elements with mass.\n" + }, + { + "className": "HexahedronSetGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "HexahedronSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "QuadSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "hexahedronSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "HexahedronSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Hexa indices", + "name": "showHexaIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the Hexahedron in the topology", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the hexahedra (between 0 and 1; if <1.0, it produces gaps between the hexahedra)", + "name": "drawScaleHexahedra", + "type": "f" + }, + { + "defaultValue": "1 0.5 0 1", + "group": "Visualization", + "help": "RGB code color used to draw hexahedra.", + "name": "drawColorHexahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "HexahedronSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "QuadSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "hexahedronSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "HexahedronSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Hexa indices", + "name": "showHexaIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the Hexahedron in the topology", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the hexahedra (between 0 and 1; if <1.0, it produces gaps between the hexahedra)", + "name": "drawScaleHexahedra", + "type": "f" + }, + { + "defaultValue": "1 0.5 0 1", + "group": "Visualization", + "help": "RGB code color used to draw hexahedra.", + "name": "drawColorHexahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to an hexahedral topology.\n" + }, + { + "className": "HexahedronSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "HexahedronSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "QuadSetTopologyContainer" + ], + "shortName": "hexahedronSetTopologyContainer", + "templateName": "", + "typeName": "HexahedronSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force the creation of a set of quads associated with the hexahedra", + "name": "createQuadArray", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to an hexahedral topology.\n" + }, + { + "className": "HexahedronSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "HexahedronSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "QuadSetTopologyModifier" + ], + "shortName": "hexahedronSetTopologyModifier", + "templateName": "", + "typeName": "HexahedronSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Remove isolated DOFs", + "name": "removeIsolated", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to an hexahedral topology.\n" + }, + { + "className": "IdentityMapping", + "creator": { + "Rigid2d,Rigid2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<2u,double>>>" + ], + "shortName": "identityMap", + "templateName": "Rigid2d,Rigid2d", + "typeName": "IdentityMapping,StdRigidTypes<2u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<2u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Rigid2d,Vec2d", + "typeName": "IdentityMapping,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "identityMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "IdentityMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "IdentityMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec1d,Vec1d", + "typeName": "IdentityMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec2d,Vec2d", + "typeName": "IdentityMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec3d,Vec3d", + "typeName": "IdentityMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec6d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec6d,Vec3d", + "typeName": "IdentityMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec6d,Vec6d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<6u,double>,double>>>" + ], + "shortName": "identityMap", + "templateName": "Vec6d,Vec6d", + "typeName": "IdentityMapping,Vec<6u,double>,double>,StdVectorTypes,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Special case of mapping where the child DOFs are the same as the parent ones\n" + }, + { + "className": "IdentityMultiMapping", + "creator": { + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "identityMultiMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "IdentityMultiMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "IdentityMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "identityMultiMap", + "templateName": "Vec3d,Vec3d", + "typeName": "IdentityMultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Concatenate several mechanical states together.\n" + }, + { + "className": "IdentityTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "IdentityTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "identityTopologicalMapping", + "templateName": "", + "typeName": "IdentityTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "TopologicalMapping where the destination topology should be kept identical to the source topology. The implementation currently assumes that both topology have been initialized identically.\n" + }, + { + "className": "ImprovedJacobiConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "ImprovedJacobiConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "BuiltConstraintSolver" + ], + "shortName": "improvedJacobiConstraintSolver", + "templateName": "", + "typeName": "ImprovedJacobiConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of iterative algorithm", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute graphs of errors and forces during resolution", + "name": "computeGraphs", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's violation at each step of the resolution", + "name": "graphViolations", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraints", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraintGroups", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraint groups", + "name": "currentIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current error", + "name": "currentError", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Build compliances concurrently", + "name": "multithreading", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use SVD decomposiiton of the compliance matrix to project singular values smaller than regularization to the regularization term. Only works with built", + "name": "useSVDForRegularization", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Fraction of the highest singular value bellow which a singular value will be supposed to belong to the nullspace", + "name": "svdSingularValueNullSpaceCriteriaFactor", + "type": "d" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "Absolute value bellow which a component of a normalized base vector will be considered null", + "name": "svdSingularVectorNullSpaceCriteriaFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, the solution found after each iteration will be multiplied by spectralCorrectionFactor*2/spr(W), with spr() denoting the spectral radius.", + "name": "useSpectralCorrection", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor used to modulate the spectral correction", + "name": "spectralCorrectionFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, the solution found after each iteration will be corrected along the solution direction using `\\lambda^{i+1} -= beta^{i} * (\\lambda^{i} - \\lambda^{i-1})` with beta following the formula beta^{i} = min(1, (i/maxIterations)^{conjugateResidueSpeedFactor}) ", + "name": "useConjugateResidue", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "", + "help": "Factor used to modulate the speed in which beta used in the conjugate residue part reaches 1.0. The higher the value, the slower the reach. ", + "name": "conjugateResidueSpeedFactor", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve Constraint based components using a Projected Jacobi iterative method\n" + }, + { + "className": "IncrSAP", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "IncrSAP", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BroadPhaseDetection", + "NarrowPhaseDetection" + ], + "shortName": "incrSAP", + "templateName": "", + "typeName": "IncrSAP" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "if not empty, objects that do not intersect this bounding-box will be ignored", + "name": "box", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Collision detection using incremental sweep and prune.\n" + }, + { + "className": "IndexValueMapper", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndexValueMapper", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "indexValueMapper", + "templateName": "Vec3d", + "typeName": "IndexValueMapper,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Already existing values (can be empty)", + "name": "inputValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices to map value on", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Value to map indices on", + "name": "value", + "type": "d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "New map between indices and values", + "name": "outputValues", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default value for indices without any value", + "name": "defaultValue", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Input values to output values mapper. Includes indices rules, such as replacement, resize.\n" + }, + { + "className": "Indices2ValuesMapper", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "Indices2ValuesMapper", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "indices2ValuesMapper", + "templateName": "Vec3d", + "typeName": "Indices2ValuesMapper,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Already existing values (can be empty) ", + "name": "inputValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices to map value on ", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Values to map indices on ", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "New map between indices and values", + "name": "outputValues", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default value for indices without any value", + "name": "defaultValue", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Input multiple values to output values mapper. Includes indices rules, such as replacement, resize.\n" + }, + { + "className": "IndicesFromValues", + "creator": { + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "I", + "typeName": "IndicesFromValues" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "Vec2d", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "Vec3d", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "d": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "d", + "typeName": "IndicesFromValues" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "fixed_array", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "fixed_array", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "fixed_array", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "fixed_array", + "typeName": "IndicesFromValues>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "i", + "typeName": "IndicesFromValues" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "string": { + "class": { + "categories": [ + "Engine" + ], + "className": "IndicesFromValues", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "indicesFromValues", + "templateName": "string", + "typeName": "IndicesFromValues,allocator>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Global values, in which the input values are searched", + "name": "global", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the given values, searched in global", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices of the other values, (NOT the given ones) searched in global", + "name": "otherIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if set to true, output are indices of the \"global\" data matching with one of the values", + "name": "recursiveSearch", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine finding the indices of a list of values within a larger set of values.\n" + }, + { + "className": "InfoComponent", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "InfoComponent", + "namespaceName": "sofa::component::sceneutility::infocomponent", + "parents": [ + "BaseObject" + ], + "shortName": "infoComponent", + "templateName": "", + "typeName": "InfoComponent" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "This object retain the info/error message.\n" + }, + { + "className": "InputEventReader", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "InputEventReader", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "inputEventReader", + "templateName": "", + "typeName": "InputEventReader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "/dev/input/mouse2", + "group": "", + "help": "input events file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "inverse the sense of the movement", + "name": "inverseSense", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Print event information", + "name": "printEvent", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Key event generated when the left pedal is pressed", + "name": "key1", + "type": "b" + }, + { + "defaultValue": "1", + "group": "", + "help": "Key event generated when the right pedal is pressed", + "name": "key2", + "type": "b" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, write incoming events ; if false, read events from that file (if an output filename is provided)", + "name": "writeEvents", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Other filename where events will be stored (or read)", + "name": "outputFilename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Read events from file.\n" + }, + { + "className": "InteractionEllipsoidForceField", + "creator": { + "Vec3d,Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "InteractionEllipsoidForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "MixedInteractionForceField,Vec<3u,double>,double>,StdRigidTypes<3u,double>>" + ], + "shortName": "interactionEllipsoidFF", + "templateName": "Vec3d,Rigid3d", + "typeName": "InteractionEllipsoidForceField,Vec<3u,double>,double>,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Contacts", + "name": "contacts", + "type": "vector,Vec<3u,double>,double>,StdRigidTypes<3u,double>>Contact,CPUMemoryManager,Vec<3u,double>,double>,StdRigidTypes<3u,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid center", + "name": "center", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "ellipsoid radius", + "name": "vradius", + "type": "vector" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness (positive to repulse outward, negative inward)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "", + "help": "ellipsoid color. (default=[0.0,0.5,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "enable/disable drawing of the ellipsoid", + "name": "draw", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dof index of object 2 where the forcefield is attached", + "name": "object2_dof_index", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "enable/disable propagation of forces to object 2", + "name": "object2_forces", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "inverse transform from object 2 (use when object 1 is in local coordinates within a frame defined by object 2)", + "name": "object2_invert", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Outward / inward repulsion applied by an ellipsoid geometry, which can possibly act on several objects.\n" + }, + { + "className": "InteractiveCamera", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "InteractiveCamera", + "namespaceName": "sofa::component::visual", + "parents": [ + "BaseCamera" + ], + "shortName": "interactiveCamera", + "templateName": "", + "typeName": "InteractiveCamera" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's position", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's orientation", + "name": "orientation", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's look at", + "name": "lookAt", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Distance between camera and look at", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "45", + "group": "", + "help": "Camera's FOV", + "name": "fieldOfView", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Camera's zNear", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Camera's zFar", + "name": "zFar", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute Z clip planes (Near and Far) according to the bounding box", + "name": "computeZClip", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "minBBox", + "name": "minBBox", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "maxBBox", + "name": "maxBBox", + "type": "Vec3d" + }, + { + "defaultValue": "800", + "group": "", + "help": "widthViewport", + "name": "widthViewport", + "type": "I" + }, + { + "defaultValue": "600", + "group": "", + "help": "heightViewport", + "name": "heightViewport", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera Type (0 = Perspective, 1 = Orthographic)", + "name": "projectionType", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "", + "help": "Camera activated ?", + "name": "activated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the lookAt point always fixed", + "name": "fixedLookAt", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "250", + "group": "", + "help": "Zoom Speed", + "name": "zoomSpeed", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "Pan Speed", + "name": "panSpeed", + "type": "d" + }, + { + "defaultValue": "2", + "group": "", + "help": "Pivot (0 => Camera lookAt, 1 => Camera position, 2 => Scene center, 3 => World center", + "name": "pivot", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Camera with mouse and keyboard controls.\n" + }, + { + "className": "InvertTransformMatrixEngine", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "InvertTransformMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "AbstractTransformMatrixEngine" + ], + "shortName": "invertTransformMatrixEngine", + "templateName": "", + "typeName": "InvertTransformMatrixEngine" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "input transformation if any", + "name": "inT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output transformation", + "name": "outT", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Inverts the input transform.\n" + }, + { + "className": "JacobiPreconditioner", + "creator": { + "DiagonalMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "JacobiPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "jacobiPreconditioner", + "templateName": "DiagonalMatrix", + "typeName": "JacobiPreconditioner,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear solver based on a diagonal matrix (i.e. Jacobi preconditioner).\n" + }, + { + "className": "JoinPoints", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "JoinPoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "joinPoints", + "templateName": "Vec3d", + "typeName": "JoinPoints,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Points", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Distance to merge points", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Merged Points", + "name": "mergedPoints", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Merge points from a set of points within a given distance.\n" + }, + { + "className": "JointSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "JointSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField>" + ], + "shortName": "jointSpringFF", + "templateName": "Rigid3d", + "typeName": "JointSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "outfile", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "input file containing constant joint force", + "name": "infile", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "period between outputs", + "name": "period", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling reinitialization of the output file at each timestep", + "name": "reinit", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector>,CPUMemoryManager>>>" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the lawful part of the joint rotation", + "name": "showLawfulTorsion", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the illicit part of the joint rotation", + "name": "showExtraTorsion", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "modify the size of the debug information of a given factor", + "name": "showFactorSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs for Rigids.\n" + }, + { + "className": "LCPConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LCPConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "ConstraintSolverImpl" + ], + "shortName": "lCPConstraintSolver", + "templateName": "", + "typeName": "LCPConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display debug information.", + "name": "displayDebug", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate LCP results history to improve its resolution performances.", + "name": "initial_guess", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "LCP is not fully built to increase performance in some case.", + "name": "build_lcp", + "type": "bool" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of the Gauss-Seidel algorithm", + "name": "maxIt", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "0.6", + "group": "", + "help": "Friction coefficient", + "name": "mu", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not zero, constraints whose self-compliance (i.e. the corresponding value on the diagonal of W) is smaller than this threshold will be ignored", + "name": "minW", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not zero, constraints whose response force becomes larger than this threshold will be ignored", + "name": "maxF", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of ID of groups of constraints to be handled by this solver.", + "name": "group", + "type": "set" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Distance between each constraint cells", + "name": "showCellWidth", + "type": "d" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Position of the first cell", + "name": "showTranslation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve BaseConstraint based components.\n" + }, + { + "className": "LCPForceFeedback", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Controller" + ], + "className": "LCPForceFeedback", + "namespaceName": "sofa::component::haptics", + "parents": [ + "MechanicalStateForceFeedback>" + ], + "shortName": "lCPForceFeedback", + "templateName": "Rigid3d", + "typeName": "LCPForceFeedback>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + }, + { + "defaultValue": "0.03", + "group": "", + "help": "multiply haptic force by this coef.", + "name": "forceCoef", + "type": "d" + }, + { + "defaultValue": "0.0008", + "group": "", + "help": "max time to spend solving constraints.", + "name": "solverTimeout", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "max iteration to spend solving constraints", + "name": "solverMaxIt", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, deriv the rotations when updating the violations", + "name": "derivRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flag to enable/disable constraint haptic influence from all frames", + "name": "localHapticConstraintAllFrames", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + }, + "Vec1d": { + "class": { + "categories": [ + "Controller" + ], + "className": "LCPForceFeedback", + "namespaceName": "sofa::component::haptics", + "parents": [ + "MechanicalStateForceFeedback,Vec<1u,double>,double>>" + ], + "shortName": "lCPForceFeedback", + "templateName": "Vec1d", + "typeName": "LCPForceFeedback,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + }, + { + "defaultValue": "0.03", + "group": "", + "help": "multiply haptic force by this coef.", + "name": "forceCoef", + "type": "d" + }, + { + "defaultValue": "0.0008", + "group": "", + "help": "max time to spend solving constraints.", + "name": "solverTimeout", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "max iteration to spend solving constraints", + "name": "solverMaxIt", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, deriv the rotations when updating the violations", + "name": "derivRotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flag to enable/disable constraint haptic influence from all frames", + "name": "localHapticConstraintAllFrames", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + } + }, + "description": "LCP force feedback for the device.\n" + }, + { + "className": "LightManager", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "LightManager", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManager" + ], + "shortName": "lightManager", + "templateName": "", + "typeName": "LightManager" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable Shadow in the scene. (default=0)", + "name": "shadows", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If Shadows enabled, Enable Variance Soft Shadow in the scene. (default=0)", + "name": "softShadows", + "type": "bool" + }, + { + "defaultValue": "0 0 0 1", + "group": "", + "help": "Ambient lights contribution (Vec4f)(default=[0.0f,0.0f,0.0f,0.0f])", + "name": "ambient", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable/disable drawing of lights shadow textures. (default=false)", + "name": "debugDraw", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Manage a set of lights that can cast hard and soft shadows.Soft Shadows is done using Variance Shadow Mapping (http://developer.download.nvidia.com/SDK/10.5/direct3d/Source/VarianceShadowMapping/Doc/VarianceShadowMapping.pdf)\n" + }, + { + "className": "LineAxis", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "LineAxis", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "lineAxis", + "templateName": "", + "typeName": "LineAxis" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "xyz", + "group": "", + "help": "Axis to draw.", + "name": "axis", + "type": "string" + }, + { + "defaultValue": "10", + "group": "", + "help": "Size of the lines.", + "name": "size", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, ignore the 'size' and draw infinite lines.", + "name": "infinite", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the lines.", + "name": "thickness", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "In case of infinite lines, should the lines gradually vanish.", + "name": "vanishing", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Display scene axis\n" + }, + { + "className": "LineCollisionModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "LineCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "lineCollisionModel", + "templateName": "Vec3d", + "typeName": "LineCollisionModel,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the line model (when surface normals are defined on these lines)", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display Collision Model Points free position(in green)", + "name": "displayFreePosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a linear mesh, as described in MeshTopology.\n" + }, + { + "className": "LineProjectiveConstraint", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LineProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "lineProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "LineProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "A point in the line", + "name": "origin", + "type": "Vec2d" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Direction of the line", + "name": "direction", + "type": "Vec2d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LineProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "lineProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "LineProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "A point in the line", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Direction of the line", + "name": "direction", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given particles to their initial positions.\n" + }, + { + "className": "LineSetSkinningMapping", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "LineSetSkinningMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "lineSetSkinningMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "LineSetSkinningMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "3", + "group": "", + "help": "Set the neighborhood line level", + "name": "neighborhoodLevel", + "type": "I" + }, + { + "defaultValue": "4", + "group": "", + "help": "Set the number of most influenced lines by each vertice", + "name": "numberInfluencedLines", + "type": "I" + }, + { + "defaultValue": "4", + "group": "", + "help": "Set the coefficient used to compute the weight of lines", + "name": "weightCoef", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Skin a model from a set of rigid lines.\n" + }, + { + "className": "LinearForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "linearFF", + "templateName": "Rigid3d", + "typeName": "LinearForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "linearFF", + "templateName": "Vec1d", + "typeName": "LinearForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "linearFF", + "templateName": "Vec2d", + "typeName": "LinearForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "linearFF", + "templateName": "Vec3d", + "typeName": "LinearForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "LinearForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "linearFF", + "templateName": "Vec6d", + "typeName": "LinearForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points where the force is applied", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force to all points", + "name": "force", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the interpolation", + "name": "times", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "forces corresponding to the key times", + "name": "forces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the drawn arrows (0->no arrows, sign->direction of drawing", + "name": "arrowSizeCoef", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Linearly-interpolated force applied to given degrees of freedom.\n" + }, + { + "className": "LinearMovementProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "LinearMovementProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "LinearMovementProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "LinearMovementProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "LinearMovementProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "linearMovementProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "LinearMovementProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, movements are relative to first position, absolute otherwise", + "name": "relativeMovements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Impose a motion to given DOFs (translation and rotation).\n" + }, + { + "className": "LinearSolverConstraintCorrection", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LinearSolverConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection>" + ], + "shortName": "linearSolverConstraintCorrection", + "templateName": "Rigid3d", + "typeName": "LinearSolverConstraintCorrection>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "constraints are reordered along a wire-like topology (from tip to base)", + "name": "wire_optimization", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec1d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LinearSolverConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<1u,double>,double>>" + ], + "shortName": "linearSolverConstraintCorrection", + "templateName": "Vec1d", + "typeName": "LinearSolverConstraintCorrection,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "constraints are reordered along a wire-like topology (from tip to base)", + "name": "wire_optimization", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec2d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LinearSolverConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<2u,double>,double>>" + ], + "shortName": "linearSolverConstraintCorrection", + "templateName": "Vec2d", + "typeName": "LinearSolverConstraintCorrection,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "constraints are reordered along a wire-like topology (from tip to base)", + "name": "wire_optimization", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "LinearSolverConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<3u,double>,double>>" + ], + "shortName": "linearSolverConstraintCorrection", + "templateName": "Vec3d", + "typeName": "LinearSolverConstraintCorrection,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "constraints are reordered along a wire-like topology (from tip to base)", + "name": "wire_optimization", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to compute the compliance matrix, requiring the inverse of the linear system matrix", + "name": "linearSolver" + }, + { + "destinationTypeName": "OdeSolver", + "help": "Link towards the ODE solver used to recover the integration factors", + "name": "ODESolver" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + } + }, + "description": "Component computing constraint forces within a simulated body using the compliance method.\n" + }, + { + "className": "LinearVelocityProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "LinearVelocityProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "LinearVelocityProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "LinearVelocityProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "LinearVelocityProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "LinearVelocityProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "linearVelocityProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "LinearVelocityProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocities corresponding to the key times", + "name": "velocities", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coordinates on which to apply velocities", + "name": "coordinates", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true then the last velocity will still be applied after all the key events", + "name": "continueAfterEnd", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Impose a velocity to given DOFs (translation and rotation).\n" + }, + { + "className": "LocalMinDistance", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "LocalMinDistance", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "BaseProximityIntersection" + ], + "shortName": "localMinDistance", + "templateName": "", + "typeName": "LocalMinDistance" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Distance above which the intersection computations ignores the proximity pair. This distance can also be used in some broad phase algorithms to reduce the search area", + "name": "alarmDistance", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Distance below which a contact is created", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate LMD filter", + "name": "filterIntersection", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Filtering cone extension angle", + "name": "angleCone", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Factor for filtering cone angle computation", + "name": "coneFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use external cone computation", + "name": "useLMDFilters", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "A set of methods to compute (for constraint methods) if two primitives are close enough to consider they collide\n" + }, + { + "className": "MapIndices", + "creator": { + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "I", + "typeName": "MapIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "fixed_array", + "typeName": "MapIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "fixed_array", + "typeName": "MapIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "fixed_array", + "typeName": "MapIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "fixed_array", + "typeName": "MapIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "MapIndices", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mapIndices", + "templateName": "i", + "typeName": "MapIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input indices", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "array containing in ith cell the input index corresponding to the output index i (or reversively if transpose=true)", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output indices, converted as a string", + "name": "outStr", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Should the transposed mapping be used ?", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Apply a permutation to a set of indices.\n" + }, + { + "className": "MappedObject", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State>" + ], + "shortName": "mappedObject", + "templateName": "Rigid2d", + "typeName": "MappedObject>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Rigid3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State>" + ], + "shortName": "mappedObject", + "templateName": "Rigid3d", + "typeName": "MappedObject>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec1d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State,Vec<1u,double>,double>>" + ], + "shortName": "mappedObject", + "templateName": "Vec1d", + "typeName": "MappedObject,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec2d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State,Vec<2u,double>,double>>" + ], + "shortName": "mappedObject", + "templateName": "Vec2d", + "typeName": "MappedObject,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State,Vec<3u,double>,double>>" + ], + "shortName": "mappedObject", + "templateName": "Vec3d", + "typeName": "MappedObject,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec6d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MappedObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "State,Vec<6u,double>,double>>" + ], + "shortName": "mappedObject", + "templateName": "Vec6d", + "typeName": "MappedObject,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position vector", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "velocity vector", + "name": "velocity", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.StateContainer" + } + }, + "description": "Mapped state vectors\n" + }, + { + "className": "MathOp", + "creator": { + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MathOp", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "mathOp", + "templateName": "vector", + "typeName": "MathOp>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input values", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Selected operation to apply", + "name": "op", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 1", + "name": "input1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values 2", + "name": "input2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Apply a math operation to combine several inputs.\n" + }, + { + "className": "MatrixFreeSystem", + "creator": { + "GraphScattered": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixFreeSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem" + ], + "shortName": "matrixFreeSystem", + "templateName": "GraphScattered", + "typeName": "MatrixFreeSystem" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "Matrix-free (unbuilt) linear system.\n" + }, + { + "className": "MatrixLinearSystem", + "creator": { + "BTDMatrix6d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,BlockVector<6ul,double>>" + ], + "shortName": "matrixLinearSystem", + "templateName": "BTDMatrix6d", + "typeName": "MatrixLinearSystem,BlockVector<6ul,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "BlockDiagonalMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "BlockDiagonalMatrixMat3x3d", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat2x2d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat2x2d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat4x4d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat4x4d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat6x6d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat6x6d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixMat8x8d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixMat8x8d", + "typeName": "MatrixLinearSystem,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "DiagonalMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "DiagonalMatrix", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "FullMatrix", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "RotationMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "RotationMatrixd", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "MatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "matrixLinearSystem", + "templateName": "SparseMatrix", + "typeName": "MatrixLinearSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the stiffness is added to the global matrix", + "name": "assembleStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the mass is added to the global matrix", + "name": "assembleMass", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the damping is added to the global matrix", + "name": "assembleDamping", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the geometric stiffness of mappings is added to the global matrix", + "name": "assembleGeometricStiffness", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, projective constraints are applied on the global matrix", + "name": "applyProjectiveConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, mapped components contribute to the global matrix", + "name": "applyMappedComponents", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, indices are verified before being added in to the global matrix, favoring security over speed", + "name": "checkIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, independent matrices (global matrix vs mapped matrices) are assembled in parallel", + "name": "parallelAssemblyIndependentMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Linear system dedicated to a Band Tri Diagonal matrix.\nLinear system.\n" + }, + { + "className": "MatrixProjectionMethod", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MatrixProjectionMethod", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "BaseMatrixProjectionMethod>" + ], + "shortName": "matrixProjectionMethod", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "MatrixProjectionMethod>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if mapping jacobians are considered constant over time. They are computed only the first time.", + "name": "areJacobiansConstant", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + } + ] + }, + "target": "Sofa.Component.LinearSystem" + } + }, + "description": "Matrix mapping computing the matrix projection using the Eigen library.\n" + }, + { + "className": "MeanComputation", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Rigid2d", + "typeName": "MeanComputation>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Rigid3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Rigid3d", + "typeName": "MeanComputation>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Vec1d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Vec1d", + "typeName": "MeanComputation,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Vec2d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Vec2d", + "typeName": "MeanComputation,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + }, + "Vec3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeanComputation", + "namespaceName": "sofa::component::engine", + "parents": [ + "BaseObject" + ], + "shortName": "meanComputation", + "templateName": "Vec3d", + "typeName": "MeanComputation,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Result: mean computed from the input values", + "name": "result", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Compute the mean of the input elements.\n" + }, + { + "className": "MechanicalObject", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState>" + ], + "shortName": "mObject", + "templateName": "Rigid2d", + "typeName": "MechanicalObject>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Rigid3d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState>" + ], + "shortName": "mObject", + "templateName": "Rigid3d", + "typeName": "MechanicalObject>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec1d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState,Vec<1u,double>,double>>" + ], + "shortName": "mObject", + "templateName": "Vec1d", + "typeName": "MechanicalObject,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec2d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState,Vec<2u,double>,double>>" + ], + "shortName": "mObject", + "templateName": "Vec2d", + "typeName": "MechanicalObject,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec3d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState,Vec<3u,double>,double>>" + ], + "shortName": "mObject", + "templateName": "Vec3d", + "typeName": "MechanicalObject,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + }, + "Vec6d": { + "class": { + "categories": [ + "MechanicalState" + ], + "className": "MechanicalObject", + "namespaceName": "sofa::component::statecontainer", + "parents": [ + "MechanicalState,Vec<6u,double>,double>>" + ], + "shortName": "mObject", + "templateName": "Vec6d", + "typeName": "MechanicalObject,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "States", + "help": "position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "velocity coordinates of the degrees of freedom", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "force vector of the degrees of freedom", + "name": "force", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Rest States", + "help": "rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Force", + "help": "externalForces vector of the degrees of freedom", + "name": "externalForce", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "dx vector of the degrees of freedom", + "name": "derivX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free position coordinates of the degrees of freedom", + "name": "free_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Free Motion", + "help": "free velocity coordinates of the degrees of freedom", + "name": "free_velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "constraints applied to the degrees of freedom", + "name": "constraint", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "Jacobian", + "help": "mappingJacobian applied to the degrees of freedom", + "name": "mappingJacobian", + "type": "CompressedRowSparseMatrixConstraint,CRSConstraintPolicy>" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset position coordinates of the degrees of freedom", + "name": "reset_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "States", + "help": "reset velocity coordinates of the degrees of freedom", + "name": "reset_velocity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "optional scaling of rest position coordinates (to simulated pre-existing internal tension).(default = 1.0)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Shall this object rely on any active topology to initialize its size and positions", + "name": "useTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show objects. (default=false)", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "Visualization", + "help": "Scale for object display. (default=0.1)", + "name": "showObjectScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show indices. (default=false)", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show velocity. (default=false)", + "name": "showVectors", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Scale for vectors display. (default=0.0001)", + "name": "showVectorsScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way vectors will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow.\n\nThe DOFS will be drawn:\n- 0: point\n- >1: sphere. (default=0)", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "1 1 1 1", + "group": "Visualization", + "help": "Color for object display. (default=[1 1 1 1])", + "name": "showColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Translation of the DOFs, applied after the rest position has been computed", + "name": "translation2", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Rotation of the DOFs, applied the after the rest position has been computed", + "name": "rotation2", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of the vectors", + "name": "size", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size to reserve when creating vectors. (default=0)", + "name": "reserve", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the topology relevant for this object", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.StateContainer" + } + }, + "description": "mechanical state vectors\n" + }, + { + "className": "MechanicalStateController", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Controller" + ], + "className": "MechanicalStateController", + "namespaceName": "sofa::component::controller", + "parents": [ + "Controller" + ], + "shortName": "mechanicalStateController", + "templateName": "Rigid3d", + "typeName": "MechanicalStateController>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Event handling frequency controls the controller update frequency", + "name": "handleEventTriggersUpdate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Index of the controlled DOF", + "name": "index", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Controlling the DOF only in translation", + "name": "onlyTranslation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "state of ths device button", + "name": "buttonDeviceState", + "type": "bool" + }, + { + "defaultValue": "0 0 -1", + "group": "", + "help": "Main direction and orientation of the controlled DOF", + "name": "mainDirection", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Controller" + }, + "Vec1d": { + "class": { + "categories": [ + "Controller" + ], + "className": "MechanicalStateController", + "namespaceName": "sofa::component::controller", + "parents": [ + "Controller" + ], + "shortName": "mechanicalStateController", + "templateName": "Vec1d", + "typeName": "MechanicalStateController,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Event handling frequency controls the controller update frequency", + "name": "handleEventTriggersUpdate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Index of the controlled DOF", + "name": "index", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Controlling the DOF only in translation", + "name": "onlyTranslation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "state of ths device button", + "name": "buttonDeviceState", + "type": "bool" + }, + { + "defaultValue": "0 0 -1", + "group": "", + "help": "Main direction and orientation of the controlled DOF", + "name": "mainDirection", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Controller" + } + }, + "description": "Provides a Mouse & Keyboard user control on a Mechanical State.\n" + }, + { + "className": "MergeMeshes", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Rigid2d", + "typeName": "MergeMeshes>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Rigid3d", + "typeName": "MergeMeshes>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Vec1d", + "typeName": "MergeMeshes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Vec2d", + "typeName": "MergeMeshes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeMeshes", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeMeshes", + "templateName": "Vec3d", + "typeName": "MergeMeshes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "number of meshes to merge", + "name": "nbMeshes", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number Of out points", + "name": "npoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Vertices of the merged mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Edges of the merged mesh", + "name": "edges", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Triangles of the merged mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Quads of the merged mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Polygons of the merged mesh", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Tetrahedra of the merged mesh", + "name": "tetrahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output Hexahedra of the merged mesh", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 1", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input positions for mesh 2", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 1", + "name": "edges1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges for mesh 2", + "name": "edges2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 1", + "name": "triangles1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles for mesh 2", + "name": "triangles2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 1", + "name": "quads1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads for mesh 2", + "name": "quads2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 1", + "name": "tetrahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra for mesh 2", + "name": "tetrahedra2", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 1", + "name": "hexahedra1", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra for mesh 2", + "name": "hexahedra2", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Merge several meshes.\n" + }, + { + "className": "MergePoints", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Rigid2d", + "typeName": "MergePoints>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Rigid3d", + "typeName": "MergePoints>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Vec1d", + "typeName": "MergePoints,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Vec2d", + "typeName": "MergePoints,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergePoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergePoints", + "templateName": "Vec3d", + "typeName": "MergePoints,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "position coordinates of the degrees of freedom of the first object", + "name": "position1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom of the second object", + "name": "position2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Mapping of indices to inject position2 inside position1 vertex buffer", + "name": "mappingX2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the first object", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points of the second object", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "position coordinates resulting from the merge", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "do not update the output at each time step (false)", + "name": "noUpdate", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Merge 2 coordinate vectors.\n" + }, + { + "className": "MergeROIs", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeROIs", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "mergeROIs", + "templateName": "", + "typeName": "MergeROIs" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "size of indices/value vector", + "name": "nbROIs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of ROIs", + "name": "roiIndices", + "type": "vector,CPUMemoryManager>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Merge a list of ROIs (vector) into a single Data (vector>).\n" + }, + { + "className": "MergeSets", + "creator": { + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeSets", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeSets", + "templateName": "I", + "typeName": "MergeSets" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "first set of indices", + "name": "in1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "second set of indices", + "name": "in2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "merged set of indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "union", + "group": "Inputs", + "help": "name of operation to compute (union, intersection, difference, symmetric_difference)", + "name": "op", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeSets", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeSets", + "templateName": "i", + "typeName": "MergeSets" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "first set of indices", + "name": "in1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "second set of indices", + "name": "in2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "merged set of indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "union", + "group": "Inputs", + "help": "name of operation to compute (union, intersection, difference, symmetric_difference)", + "name": "op", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Merge two sets of indices using specified boolean operation.\n" + }, + { + "className": "MergeVectors", + "creator": { + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors,CPUMemoryManager>>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "vector": { + "class": { + "categories": [ + "Engine" + ], + "className": "MergeVectors", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "mergeVectors", + "templateName": "vector", + "typeName": "MergeVectors>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Output vector", + "name": "output", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Apply a merge operation to combine several inputs.\n" + }, + { + "className": "MergeVisualModels", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "MergeVisualModels", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "OglModel" + ], + "shortName": "mergeVisualModels", + "templateName": "Vec3d", + "typeName": "MergeVisualModels" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if rest positions must be initialized with initial positions", + "name": "initRestPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normal smoothing groups should be read from file", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normals should be updated at each iteration", + "name": "updateNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tangents should be computed at startup", + "name": "computeTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if tangents should be updated at each iteration", + "name": "updateTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if topological changes should be handled", + "name": "handleDynamicTopology", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if UV seams should be handled even when duplicate UVs are merged", + "name": "fixMergedUVSeams", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep and draw lines (false by default)", + "name": "keepLines", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "vertices of the model (only if vertices have multiple normals/texcoords, otherwise positions are used)", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "coordinates of the texture", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "tangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "bitangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "edges of the model", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "triangles of the model", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "quads of the model", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": " Path to an ogl model", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the Texture", + "name": "texturename", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Translation of the object", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Rotation of the object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Initial Scale of the object", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "1 1", + "group": "", + "help": "Scale of the texture", + "name": "scaleTex", + "type": "Vec2f" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Translation of the texture", + "name": "translationTex", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Material", + "name": "material", + "type": "Material" + }, + { + "defaultValue": "0", + "group": "", + "help": "Give Texture Coordinates without the texture binding", + "name": "putOnlyTexCoords", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "When sRGB rendering is enabled, is the texture in sRGB colorspace?", + "name": "srgbTexturing", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Groups of triangles and quads using a given material", + "name": "groups", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blend transparent parts", + "name": "blendTranslucency", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "is alpha premultiplied ?", + "name": "premultipliedAlpha", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Write into Z Buffer for Transparent Object", + "name": "writeZTransparent", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable alpha blending", + "name": "alphaBlend", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable depth testing", + "name": "depthTest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Face culling (0 = no culling, 1 = cull back faces, 2 = cull front faces)", + "name": "cullFace", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Line width (set if != 1, only for lines rendering)", + "name": "lineWidth", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "Point size (set if != 1, only for points rendering)", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth line rendering", + "name": "lineSmooth", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth point rendering", + "name": "pointSmooth", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Select types of primitives to send (necessary for some shader types such as geometry or tessellation)", + "name": "primitiveType", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how source and destination colors are combined", + "name": "blendEquation", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha source blending factors are computed", + "name": "sfactor", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha destination blending factors are computed", + "name": "dfactor", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "", + "help": "number of input visual models to merge", + "name": "nb", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "VisualModelImpl", + "help": "input visual model(1)", + "name": "input1" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Merge several visual models.\n" + }, + { + "className": "Mesh2PointMechanicalMapping", + "creator": { + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "Mesh2PointMechanicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "mesh2PointMechanicalMap", + "templateName": "Vec3d,Vec3d", + "typeName": "Mesh2PointMechanicalMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "Mesh2PointTopologicalMapping", + "help": "Link to a Mesh2PointTopologicalMapping", + "name": "topologicalMapping" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the input topology", + "name": "inputTopology" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to the output topology", + "name": "outputTopology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Mechanical mapping between a set of mesh primitives (point, edge, triangle...) and a set of points generated by Mesh2PointTopologicalMapping.\n" + }, + { + "className": "Mesh2PointTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Mesh2PointTopologicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "TopologicalMapping" + ], + "shortName": "mesh2PointTopologicalMapping", + "templateName": "", + "typeName": "Mesh2PointTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the points of the input topology", + "name": "pointBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the edges of the input topology", + "name": "edgeBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the triangles of the input topology", + "name": "triangleBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the quads of the input topology", + "name": "quadBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the tetra of the input topology", + "name": "tetraBaryCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "BaryCoords", + "help": "Coordinates for the points of the output topology created from the hexa of the input topology", + "name": "hexaBaryCoords", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Activate mapping of input edges into the output topology (requires at least one item in pointBaryCoords)", + "name": "copyEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Activate mapping of input triangles into the output topology (requires at least one item in pointBaryCoords)", + "name": "copyTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Activate mapping of input tetrahedra into the output topology (requires at least one item in pointBaryCoords)", + "name": "copyTetrahedra", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "This class maps any mesh primitive (point, edge, triangle...) into a point using a relative position from the primitive.\n" + }, + { + "className": "MeshBarycentricMapperEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshBarycentricMapperEngine", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "meshBarycentricMapperEngine", + "templateName": "Vec3d", + "typeName": "MeshBarycentricMapperEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Initial positions of the master points", + "name": "inputPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Initial positions of the points to be mapped", + "name": "mappedPointPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output : Barycentric positions of the mapped points", + "name": "barycentricPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output : Table that provides the index of the element to which each input point belongs", + "name": "tableElements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, computes a linear interpolation (debug)", + "name": "computeLinearInterpolation", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of a linear interpolation", + "name": "linearInterpolationIndices", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Values of a linear interpolation", + "name": "linearInterpolationValues", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Name of the master topology", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine mapping a set of points in a topological model and provide barycentric coordinates\n" + }, + { + "className": "MeshBoundaryROI", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshBoundaryROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "meshBoundaryROI", + "templateName": "", + "typeName": "MeshBoundaryROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "optional subset of the input mesh", + "name": "inputROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Index lists of the closing vertices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Outputs indices of boundary vertices of a triangle/quad mesh\n" + }, + { + "className": "MeshClosingEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshClosingEngine", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "meshClosingEngine", + "templateName": "Vec3d", + "typeName": "MeshClosingEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vertices", + "name": "inputPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles", + "name": "inputTriangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads", + "name": "inputQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vertices of closed mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles of closed mesh", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quads of closed mesh (=input quads with current method)", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Index lists of the closing parts", + "name": "indices", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vertices of the closing parts", + "name": "closingPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles of the closing parts", + "name": "closingTriangles", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Close a given mesh.\n" + }, + { + "className": "MeshExporter", + "creator": { + "": { + "class": { + "categories": [ + "Exporter" + ], + "className": "MeshExporter", + "namespaceName": "sofa::component::_meshexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "meshExporter", + "templateName": "", + "typeName": "MeshExporter" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "ALL", + "group": "", + "help": "File format to use", + "name": "format", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "points position (will use points from topology or mechanical state if this is empty)", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "write edge topology", + "name": "edges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "write triangle topology", + "name": "triangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "write quad topology", + "name": "quads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "write tetra topology", + "name": "tetras", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "write hexa topology", + "name": "hexas", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Export topology and positions into file. \nSupported format are: \n- vtkxml \n- vtk \n- netgen \n- teten \n- gmsh \n- obj \n\n" + }, + { + "className": "MeshGmshLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshGmshLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshGmshLoader", + "templateName": "", + "typeName": "MeshGmshLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for Gmsh file format.\n" + }, + { + "className": "MeshMatrixMass", + "creator": { + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec1d,Vec1d", + "typeName": "MeshMatrixMass,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec1d,Vec2d", + "typeName": "MeshMatrixMass,Vec<1u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec1d,Vec3d", + "typeName": "MeshMatrixMass,Vec<1u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec2d,Vec2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<2u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec2d,Vec2d", + "typeName": "MeshMatrixMass,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec2d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<2u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec2d,Vec3d", + "typeName": "MeshMatrixMass,Vec<2u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "MeshMatrixMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<3u,double>,double>>" + ], + "shortName": "meshMatrixMass", + "templateName": "Vec3d,Vec3d", + "typeName": "MeshMatrixMass,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Specify real and strictly positive value(s) for the mass density. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "massDensity", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on vertices, supporting topological changes", + "name": "vertexMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "internal values of the particles masses on edges, supporting topological changes", + "name": "edgeMass", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass of every element is computed based on the rest position rather than the position", + "name": "computeMassOnRest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, the mass matrix is lumped, meaning the mass matrix becomes diagonal (summing all mass values of a line on the diagonal)", + "name": "lumping", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean if you want to check the mass conservation", + "name": "printMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of the controlled potential", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the MechanicalObject associated with the geometry", + "name": "geometryState" + } + ] + }, + "target": "Sofa.Component.Mass" + } + }, + "description": "Compute a mass matrix resulting from the space integration of a density over a domain.\n" + }, + { + "className": "MeshOBJLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshOBJLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshOBJLoader", + "templateName": "", + "typeName": "MeshOBJLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Preserve UV and normal seams information (vertices with multiple UV and/or normals)", + "name": "handleSeams", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Load the related MTL file or use a default one?", + "name": "loadMaterial", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Shading", + "help": "Default material", + "name": "defaultMaterial", + "type": "Material" + }, + { + "defaultValue": "", + "group": "Shading", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "List of face definitions.", + "name": "faceList", + "type": "SVector>" + }, + { + "defaultValue": "", + "group": "Texturing", + "help": "Indices of textures coordinates used in faces definition.", + "name": "texcoordsIndex", + "type": "SVector>" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "Vertex positions definition", + "name": "positionsDefinition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Texturing", + "help": "Texture coordinates definition", + "name": "texcoordsDefinition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "List of normals of elements of the mesh loaded.", + "name": "normalsIndex", + "type": "SVector>" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "Normals definition", + "name": "normalsDefinition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Texturing", + "help": "Texture coordinates of all faces, to be used as the parent data of a VisualModel texcoords data", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to activate export of Data instances containing list of face indices for each material", + "name": "computeMaterialFaces", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Geometry", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for OBJ file format.\n" + }, + { + "className": "MeshOffLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshOffLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshOffLoader", + "templateName": "", + "typeName": "MeshOffLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for Off file format.\n" + }, + { + "className": "MeshROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI>" + ], + "shortName": "meshROI", + "templateName": "Rigid3d", + "typeName": "MeshROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI position coordinates of the degrees of freedom", + "name": "ROIposition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Edge Topology", + "name": "ROIedges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Triangle Topology", + "name": "ROItriangles", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute with the mesh (not only bounding box)", + "name": "computeMeshROI", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Bounding box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the data not contained in the ROI", + "name": "drawOut", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the Bounding box around the mesh used for the ROI", + "name": "drawBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI,Vec<3u,double>,double>>" + ], + "shortName": "meshROI", + "templateName": "Vec3d", + "typeName": "MeshROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI position coordinates of the degrees of freedom", + "name": "ROIposition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Edge Topology", + "name": "ROIedges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Triangle Topology", + "name": "ROItriangles", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute with the mesh (not only bounding box)", + "name": "computeMeshROI", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Bounding box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the data not contained in the ROI", + "name": "drawOut", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the Bounding box around the mesh used for the ROI", + "name": "drawBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI,Vec<6u,double>,double>>" + ], + "shortName": "meshROI", + "templateName": "Vec6d", + "typeName": "MeshROI,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI position coordinates of the degrees of freedom", + "name": "ROIposition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Edge Topology", + "name": "ROIedges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "ROI Triangle Topology", + "name": "ROItriangles", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute with the mesh (not only bounding box)", + "name": "computeMeshROI", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Bounding box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the data not contained in the ROI", + "name": "drawOut", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the Bounding box around the mesh used for the ROI", + "name": "drawBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the primitives (vertex/edge/triangle/tetrahedron) inside a given mesh.\n" + }, + { + "className": "MeshSTLLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshSTLLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshSTLLoader", + "templateName": "", + "typeName": "MeshSTLLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "80", + "group": "", + "help": "Size of the header binary file (just before the number of facet).", + "name": "headerSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force reading in binary mode. Even in first keyword of the file is solid.", + "name": "forceBinary", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Since positions are duplicated in a STL, they have to be merged. Using a map to do so will temporarily duplicate memory but should be more efficient. Disable it if memory is really an issue.", + "name": "mergePositionUsingMap", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Loader for the STL file format. STL can be used to represent the surface of object using with a triangulation.\n" + }, + { + "className": "MeshSampler", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshSampler", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "meshSampler", + "templateName": "Vec3d", + "typeName": "MeshSampler,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "Sample number", + "name": "number", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input edges for geodesic sampling (Euclidean distances are used if not specified).", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "Inputs", + "help": "Max number of Lloyd iterations.", + "name": "maxIter", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed sample indices.", + "name": "outputIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed sample coordinates.", + "name": "outputPosition", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Select uniformly distributed points on a mesh based on Euclidean or Geodesic distance measure.\n" + }, + { + "className": "MeshSplittingEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshSplittingEngine", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "meshSplittingEngine", + "templateName": "Vec3d", + "typeName": "MeshSplittingEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "input vertices", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input edges", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input triangles", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input quads", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input tetrahedra", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input hexahedra", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of input vectors", + "name": "nbInputs", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "couples for input vertices: ROI index + index in the ROI", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output vertices(1)", + "name": "position1", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine breaking a mesh in multiple parts, based on selected vertices or cells.\n" + }, + { + "className": "MeshSpringForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "MeshSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "meshSpringFF", + "templateName": "Vec1d", + "typeName": "MeshSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "MeshSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "meshSpringFF", + "templateName": "Vec2d", + "typeName": "MeshSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "MeshSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "meshSpringFF", + "templateName": "Vec3d", + "typeName": "MeshSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Spring force field acting along the edges of a mesh.\n" + }, + { + "className": "MeshSubsetEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "MeshSubsetEngine", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "meshSubsetEngine", + "templateName": "Vec3d", + "typeName": "MeshSubsetEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vertices", + "name": "inputPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input edges", + "name": "inputEdges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input triangles", + "name": "inputTriangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input quads", + "name": "inputQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input tetrahedra", + "name": "inputTetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input hexahedra", + "name": "inputHexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Index lists of the selected vertices", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vertices of mesh subset", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "edges of mesh subset", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles of mesh subset", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quads of mesh subset", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra of mesh subset", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra of mesh subset", + "name": "hexahedra", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Extract a mesh subset based on selected vertices.\n" + }, + { + "className": "MeshTetraStuffing", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MeshTetraStuffing", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "BaseObject" + ], + "shortName": "meshTetraStuffing", + "templateName": "", + "typeName": "MeshTetraStuffing" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "BBox to restrict the volume to", + "name": "vbbox", + "type": "fixed_array" + }, + { + "defaultValue": "-8", + "group": "", + "help": "Size of the generate tetrahedra. If negative, number of grid cells in the largest bbox dimension", + "name": "size", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input surface mesh points", + "name": "inputPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input surface mesh triangles", + "name": "inputTriangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input surface mesh quads", + "name": "inputQuads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output volume mesh points", + "name": "outputPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output volume mesh tetrahedra", + "name": "outputTetrahedra", + "type": "vector" + }, + { + "defaultValue": "0.24999", + "group": "Inputs", + "help": "Minimum alpha values on long edges when snapping points", + "name": "alphaLong", + "type": "d" + }, + { + "defaultValue": "0.42978", + "group": "Inputs", + "help": "Minimum alpha values on short edges when snapping points", + "name": "alphaShort", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Snap points to the surface if intersections on edges are closed to given alpha values", + "name": "snapPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Split tetrahedra crossing the surface", + "name": "splitTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Activate rendering of internal datasets", + "name": "draw", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Create a tetrahedral volume mesh from a surface, using the algorithm from F. Labelle and J.R. Shewchuk, \"Isosurface Stuffing: Fast Tetrahedral Meshes with Good Dihedral Angles\", SIGGRAPH 2007.\n" + }, + { + "className": "MeshTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "MeshTopology", + "namespaceName": "sofa::component::topology::container::constant", + "parents": [ + "BaseMeshTopology" + ], + "shortName": "meshTopology", + "templateName": "", + "typeName": "MeshTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Constant" + } + }, + "description": "Generic constant topology loaded from a mesh file.\n" + }, + { + "className": "MeshTrianLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshTrianLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshTrianLoader", + "templateName": "", + "typeName": "MeshTrianLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set to true if the mesh is a trian2 format.", + "name": "trian2", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Table of neighborhood triangle indices for each triangle.", + "name": "neighborTable", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edges which are on the border of the mesh loaded.", + "name": "edgesOnBorder", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices which are on the border of the mesh loaded.", + "name": "trianglesOnBorderList", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for trian (only triangulations) file format.\n" + }, + { + "className": "MeshVTKLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshVTKLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshVTKLoader", + "templateName": "", + "typeName": "MeshVTKLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Mesh loader for the VTK/VTU file format.\n" + }, + { + "className": "MeshXspLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "MeshXspLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "meshXspLoader", + "templateName": "", + "typeName": "MeshXspLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Specific mesh loader for Xsp file format.\n" + }, + { + "className": "MessageHandlerComponent", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "MessageHandlerComponent", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "BaseObject" + ], + "shortName": "messageHandlerComponent", + "templateName": "", + "typeName": "MessageHandlerComponent" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Type of the message handler to use among [sofa, clang //, log , silent]. ", + "name": "handler", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "This object controls the way Sofa print's info/warning/error/fatal messages. \n" + }, + { + "className": "MinProximityIntersection", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "MinProximityIntersection", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "BaseProximityIntersection" + ], + "shortName": "minProximityIntersection", + "templateName": "", + "typeName": "MinProximityIntersection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Distance above which the intersection computations ignores the proximity pair. This distance can also be used in some broad phase algorithms to reduce the search area", + "name": "alarmDistance", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Distance below which a contact is created", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate Sphere-Triangle intersection tests", + "name": "useSphereTriangle", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate Point-Point intersection tests", + "name": "usePointPoint", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute the norms of the Detection Outputs by considering the normals of the surfaces involved.", + "name": "useSurfaceNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate Line-Point intersection tests", + "name": "useLinePoint", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "activate Line-Line intersection tests", + "name": "useLineLine", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "A set of methods to compute if two primitives are close enough to consider they collide.\n" + }, + { + "className": "MinResLinearSolver", + "creator": { + "CompressedRowSparseMatrixMat2x2d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat2x2d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat4x4d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat4x4d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat6x6d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat6x6d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixMat8x8d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixMat8x8d", + "typeName": "MinResLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "MinResLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "FullMatrix", + "typeName": "MinResLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "GraphScattered": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver" + ], + "shortName": "minResLinearSolver", + "templateName": "GraphScattered", + "typeName": "MinResLinearSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + }, + "SparseMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "MinResLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "minResLinearSolver", + "templateName": "SparseMatrix", + "typeName": "MinResLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "maximum number of iterations of the Conjugate Gradient solution", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "desired precision of the Conjugate Gradient Solution (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "Linear system solver using the MINRES iterative algorithm.\n" + }, + { + "className": "MouseInteractor", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "BehaviorModel" + ], + "className": "MouseInteractor", + "namespaceName": "sofa::gui::component::performer", + "parents": [ + "BaseMouseInteractor" + ], + "shortName": "mouseInteractor", + "templateName": "Rigid3d", + "typeName": "MouseInteractor>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + }, + "Vec2d": { + "class": { + "categories": [ + "BehaviorModel" + ], + "className": "MouseInteractor", + "namespaceName": "sofa::gui::component::performer", + "parents": [ + "BaseMouseInteractor" + ], + "shortName": "mouseInteractor", + "templateName": "Vec2d", + "typeName": "MouseInteractor,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + }, + "Vec3d": { + "class": { + "categories": [ + "BehaviorModel" + ], + "className": "MouseInteractor", + "namespaceName": "sofa::gui::component::performer", + "parents": [ + "BaseMouseInteractor" + ], + "shortName": "mouseInteractor", + "templateName": "Vec3d", + "typeName": "MouseInteractor,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Perform tasks related to the interaction with the mouse.\nPerform tasks related to the interaction with the mouse and rigid objects\n" + }, + { + "className": "MultiStepAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "MultiStepAnimationLoop", + "namespaceName": "sofa::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "multiStepAnimationLoop", + "templateName": "", + "typeName": "MultiStepAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "number of collision steps between each frame rendering", + "name": "collisionSteps", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "number of integration steps between each collision detection", + "name": "integrationSteps", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Component.AnimationLoop" + } + }, + "description": "Multi steps animation loop, multi integration steps in a single animation step are managed.\n" + }, + { + "className": "MultiTagAnimationLoop", + "creator": { + "": { + "class": { + "categories": [ + "AnimationLoop" + ], + "className": "MultiTagAnimationLoop", + "namespaceName": "sofa::component::animationloop", + "parents": [ + "BaseAnimationLoop" + ], + "shortName": "multiTagAnimationLoop", + "templateName": "", + "typeName": "MultiTagAnimationLoop" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, compute the global bounding box of the scene at each time step. Used mostly for rendering.", + "name": "computeBoundingBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseNode", + "help": "Link to the scene's node that will be processed by the loop", + "name": "targetNode" + } + ] + }, + "target": "Sofa.Component.AnimationLoop" + } + }, + "description": "Simple animation loop that given a list of tags, animate the graph one tag after another.\n" + }, + { + "className": "MultilevelHexahedronSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "MultilevelHexahedronSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "HexahedronSetTopologyContainer" + ], + "shortName": "multilevelHexahedronSetTopologyContainer", + "templateName": "", + "typeName": "MultilevelHexahedronSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force the creation of a set of quads associated with the hexahedra", + "name": "createQuadArray", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of resolution levels between the fine and coarse mesh", + "name": "level", + "type": "i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "fine resolution", + "name": "resolution", + "type": "Vec3i" + }, + { + "defaultValue": "", + "group": "", + "help": "indices of the hexa in the grid.", + "name": "idxInRegularGrid", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "map between hexahedra and components - coarse", + "name": "coarseComponents", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "map between hexahedra and components - fine", + "name": "fineComponents", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Multilevel Hexahedron set topology container.\n" + }, + { + "className": "NNCGConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "NNCGConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "BlockGaussSeidelConstraintSolver" + ], + "shortName": "nNCGConstraintSolver", + "templateName": "", + "typeName": "NNCGConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of iterative algorithm", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute graphs of errors and forces during resolution", + "name": "computeGraphs", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's violation at each step of the resolution", + "name": "graphViolations", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraints", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraintGroups", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraint groups", + "name": "currentIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current error", + "name": "currentError", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Build compliances concurrently", + "name": "multithreading", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use SVD decomposiiton of the compliance matrix to project singular values smaller than regularization to the regularization term. Only works with built", + "name": "useSVDForRegularization", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Fraction of the highest singular value bellow which a singular value will be supposed to belong to the nullspace", + "name": "svdSingularValueNullSpaceCriteriaFactor", + "type": "d" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "Absolute value bellow which a component of a normalized base vector will be considered null", + "name": "svdSingularVectorNullSpaceCriteriaFactor", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve Constraint based components using the Non-smooth Non-linear Conjugate Gradient method\n" + }, + { + "className": "NaturalOrderingMethod", + "creator": { + "": { + "class": { + "categories": [ + "OrderingMethod" + ], + "className": "NaturalOrderingMethod", + "namespaceName": "sofa::component::linearsolver::ordering", + "parents": [ + "BaseOrderingMethod" + ], + "shortName": "naturalOrderingMethod", + "templateName": "", + "typeName": "NaturalOrderingMethod" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Ordering" + } + }, + "description": "Natural order (no permutation). Corresponding to an identity matrix.\n" + }, + { + "className": "NearestPointROI", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,StdRigidTypes<2u,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Rigid2d", + "typeName": "NearestPointROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,StdRigidTypes<3u,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Rigid3d", + "typeName": "NearestPointROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Vec1d", + "typeName": "NearestPointROI,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Vec2d", + "typeName": "NearestPointROI,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Vec3d", + "typeName": "NearestPointROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NearestPointROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine", + "PairStateAccessor,Vec<6u,double>,double>,StdVectorTypes,Vec<6u,double>,double>>" + ], + "shortName": "nearestPointROI", + "templateName": "Vec6d", + "typeName": "NearestPointROI,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to consider on the first model", + "name": "inputIndices2", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius to search corresponding fixed point", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true will use restPosition only at init", + "name": "useRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the first model associated to a dof from the second model", + "name": "indices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices from the second model associated to a dof from the first model", + "name": "indices2", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "List of distances between pairs of points", + "name": "distances", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Option to draw the positions pairs computed", + "name": "drawPairs", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Attach given pair of particles, projecting the positions of the second particles to the first ones.\n" + }, + { + "className": "NewProximityIntersection", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "NewProximityIntersection", + "namespaceName": "sofa::component::collision::detection::intersection", + "parents": [ + "BaseProximityIntersection" + ], + "shortName": "newProximityIntersection", + "templateName": "", + "typeName": "NewProximityIntersection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Distance above which the intersection computations ignores the proximity pair. This distance can also be used in some broad phase algorithms to reduce the search area", + "name": "alarmDistance", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Distance below which a contact is created", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Line-line collision detection enabled", + "name": "useLineLine", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Intersection" + } + }, + "description": "Optimized Proximity Intersection based on Triangle-Triangle tests, ignoring Edge-Edge cases\n" + }, + { + "className": "NewmarkImplicitSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "NewmarkImplicitSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "OdeSolver", + "LinearSolverAccessor" + ], + "shortName": "newmarkImplicitSolver", + "templateName": "", + "typeName": "NewmarkImplicitSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to stiffness", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Velocity decay coefficient (no decay if null)", + "name": "vdamping", + "type": "d" + }, + { + "defaultValue": "0.5", + "group": "", + "help": "Newmark scheme gamma coefficient", + "name": "gamma", + "type": "d" + }, + { + "defaultValue": "0.25", + "group": "", + "help": "Newmark scheme beta coefficient", + "name": "beta", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Implicit time integrator using Newmark scheme.\n" + }, + { + "className": "NewtonRaphsonSolver", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "NewtonRaphsonSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "BaseObject" + ], + "shortName": "newtonRaphsonSolver", + "templateName": "", + "typeName": "NewtonRaphsonSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Stopping criteria", + "help": "Maximum number of iterations of the Newton's method if it has not converged.", + "name": "maxNbIterationsNewton", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "Stopping criteria", + "help": "Threshold for the relative successive progress criterion. The Newton iterations will stop when the ratio between the norm of the residual at iteration k over the norm of the residual at iteration k-1 is lower than this threshold.", + "name": "relativeSuccessiveStoppingThreshold", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "Stopping criteria", + "help": "Threshold for the relative initial progress criterion. The Newton iterations will stop when the ratio between the norm of the residual at iteration k over the norm of the residual at iteration 0 is lower than this threshold. This criterion tracks the overall progress made since the beginning of the iteration process. If the ratio is significantly smaller than 1, it indicates that the iterative process is making substantial progress, and the method is converging toward the root.", + "name": "relativeInitialStoppingThreshold", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "Stopping criteria", + "help": "Threshold for the absolute function value stopping criterion. The Newton iterations will stop when the norm of the residual at iteration k is lower than this threshold. This criterion indicates the current iteration found an estimate close to the root.", + "name": "absoluteResidualStoppingThreshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Stopping criteria", + "help": "Threshold for the relative change in root estimate criterion. The Newton iterations will stop when the difference between two successive estimates divided by the previous estimate is smaller than this threshold", + "name": "relativeEstimateDifferenceThreshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Stopping criteria", + "help": "Threshold for the absolute change in root estimate criterion. The Newton iterations will stop when the difference between two successive estimates is smaller than this threshold.", + "name": "absoluteEstimateDifferenceThreshold", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Line Search", + "help": "Maximum number of iterations of the line search method if it has not converged.", + "name": "maxNbIterationsLineSearch", + "type": "I" + }, + { + "defaultValue": "0.5", + "group": "Line Search", + "help": "Line search coefficient", + "name": "lineSearchCoefficient", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Update the states within the last iteration even if the iterative process is considered diverged.", + "name": "updateStateWhenDiverged", + "type": "bool" + }, + { + "defaultValue": "Undefined", + "group": "Analysis", + "help": "status\n- Undefined: The solver has not been called yet\n- Running: The solver is still running and/or did not finish\n- ConvergedEquilibrium: Converged: the iterations did not start because the system is already at equilibrium\n- DivergedLineSearch: Diverged: line search failed\n- DivergedMaxIterations: Diverged: Reached the maximum number of iterations\n- ConvergedResidualSuccessiveRatio: Converged: Residual successive ratio is smaller than the threshold\n- ConvergedResidualInitialRatio: Converged: Residual initial ratio is smaller than the threshold\n- ConvergedAbsoluteResidual: Converged: Absolute residual is smaller than the threshold\n- ConvergedRelativeEstimateDifference: Converged: Relative estimate difference is smaller than the threshold\n- ConvergedAbsoluteEstimateDifference: Converged: Absolute estimate difference is smaller than the threshold", + "name": "status", + "type": "SelectableItem" + }, + { + "defaultValue": "", + "group": "Analysis", + "help": "Graph of the residual over the iterations", + "name": "residualGraph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Trigger a warning if line search fails", + "name": "warnWhenLineSearchFails", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Trigger a warning if Newton-Raphson diverges", + "name": "warnWhenDiverge", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Generic Newton-Raphson algorithm solving nonlinear equations.\n" + }, + { + "className": "NonUniformHexahedralFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "NonUniformHexahedralFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::nonuniform", + "parents": [ + "HexahedralFEMForceFieldAndMass,Vec<3u,double>,double>>" + ], + "shortName": "nonUniformHexahedralFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "NonUniformHexahedralFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal hexahedron data", + "name": "hexahedronInfo", + "type": "vector,Vec<3u,double>,double>>HexahedronInformation,CPUMemoryManager,Vec<3u,double>,double>>HexahedronInformation>>" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Total mass per element", + "name": "totalMass", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass per particle", + "name": "particleMasses", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Lumped masses", + "name": "lumpedMasses", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use recursive matrix computation", + "name": "recursive", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "compute MBK and use it in addMBKdx, instead of using addDForce and addMDx.", + "name": "useMBK", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.NonUniform" + } + }, + "description": "Non uniform Hexahedral finite elements.\n" + }, + { + "className": "NonUniformHexahedronFEMForceFieldAndMass", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "NonUniformHexahedronFEMForceFieldAndMass", + "namespaceName": "sofa::component::solidmechanics::fem::nonuniform", + "parents": [ + "HexahedronFEMForceFieldAndMass,Vec<3u,double>,double>>" + ], + "shortName": "nonUniformHexahedronFEMFFAndMass", + "templateName": "Vec3d", + "typeName": "NonUniformHexahedronFEMForceFieldAndMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Mass matrices per element (M_i)", + "name": "massMatrices", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "density == volumetric mass in english (kg.m-3)", + "name": "density", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does it use lumped masses?", + "name": "lumpedMass", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use virtual finer levels, in order to compte non-uniform stiffness", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Using this ForceField like a Mass? (rather than using a separated Mass)", + "name": "useMass", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "totalMass", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.NonUniform" + } + }, + "description": "Non uniform Hexahedral finite elements.\n" + }, + { + "className": "NormEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NormEngine", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "normEngine", + "templateName": "Vec3d", + "typeName": "NormEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of scalar norms", + "name": "output", + "type": "vector" + }, + { + "defaultValue": "2", + "group": "Inputs", + "help": "The type of norm. Use a negative value for the infinite norm.", + "name": "normType", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Convert Vec in Real\n" + }, + { + "className": "NormalsFromPoints", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "NormalsFromPoints", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "normalsFromPoints", + "templateName": "Vec3d", + "typeName": "NormalsFromPoints,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Vertices of the mesh", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangles of the mesh", + "name": "triangles", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quads of the mesh", + "name": "quads", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed vertex normals of the mesh", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Swap normals", + "name": "invertNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Use incident angles to weight faces normal contributions at each vertex", + "name": "useAngles", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Compute vertex normals by averaging face normals.\n" + }, + { + "className": "NullForceFeedback", + "creator": { + "": { + "class": { + "categories": [ + "Controller" + ], + "className": "NullForceFeedback", + "namespaceName": "sofa::component::haptics", + "parents": [ + "ForceFeedback" + ], + "shortName": "nullForceFeedback", + "templateName": "", + "typeName": "NullForceFeedback" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + } + }, + "description": "Null force feedback for haptic feedback device.\n" + }, + { + "className": "NullForceFeedbackT", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Controller" + ], + "className": "NullForceFeedbackT", + "namespaceName": "sofa::component::haptics", + "parents": [ + "MechanicalStateForceFeedback>" + ], + "shortName": "nullForceFeedbackT", + "templateName": "Rigid3d", + "typeName": "NullForceFeedbackT>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + }, + "Vec1d": { + "class": { + "categories": [ + "Controller" + ], + "className": "NullForceFeedbackT", + "namespaceName": "sofa::component::haptics", + "parents": [ + "MechanicalStateForceFeedback,Vec<1u,double>,double>>" + ], + "shortName": "nullForceFeedbackT", + "templateName": "Vec1d", + "typeName": "NullForceFeedbackT,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "boolean to activate or deactivate the forcefeedback", + "name": "activate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Tool indice in the OmniDriver", + "name": "indice", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Haptics" + } + }, + "description": "Null force feedback for haptic feedback device.\n" + }, + { + "className": "OffSequenceLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "OffSequenceLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshOffLoader" + ], + "shortName": "offSequenceLoader", + "templateName": "", + "typeName": "OffSequenceLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "1", + "group": "", + "help": "number of files in the sequence", + "name": "nbOfFiles", + "type": "i" + }, + { + "defaultValue": "0.04", + "group": "", + "help": "how long each file is loaded", + "name": "stepDuration", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Read and load an .off file at each timestep.\n" + }, + { + "className": "OglColorMap", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglColorMap", + "namespaceName": "sofa::gl::component::rendering2d", + "parents": [ + "VisualModel" + ], + "shortName": "oglColorMap", + "templateName": "", + "typeName": "OglColorMap" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "256", + "group": "", + "help": "How many colors to use", + "name": "paletteSize", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Color scheme to use", + "name": "colorScheme", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Activate rendering of color scale legend on the side", + "name": "showLegend", + "type": "bool" + }, + { + "defaultValue": "10 5", + "group": "", + "help": "Draw the legend on screen with an x,y offset", + "name": "legendOffset", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Add a title to the legend", + "name": "legendTitle", + "type": "string" + }, + { + "defaultValue": "11", + "group": "", + "help": "Font size of the legend (if any)", + "name": "legendSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "min value for drawing the legend without the need to actually use the range with getEvaluator method which sets the min", + "name": "min", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "max value for drawing the legend without the need to actually use the range with getEvaluator method which sets the max", + "name": "max", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "to change the unit of the min/max value of the legend", + "name": "legendRangeScale", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering2D" + } + }, + "description": "Provides color palette and support for conversion of numbers to colors.\n" + }, + { + "className": "OglFloat2Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat2Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<2,5126u,Vec<2u,float>>" + ], + "shortName": "oglFloat2Attribute", + "templateName": "", + "typeName": "OglFloat2Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat2Attribute\n" + }, + { + "className": "OglFloat2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglFloat2Variable", + "templateName": "", + "typeName": "OglFloat2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec2f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat2Variable\n" + }, + { + "className": "OglFloat3Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat3Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<3,5126u,Vec<3u,float>>" + ], + "shortName": "oglFloat3Attribute", + "templateName": "", + "typeName": "OglFloat3Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat3Attribute\n" + }, + { + "className": "OglFloat3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglFloat3Variable", + "templateName": "", + "typeName": "OglFloat3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec3f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat3Variable\n" + }, + { + "className": "OglFloat4Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat4Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<4,5126u,Vec<4u,float>>" + ], + "shortName": "oglFloat4Attribute", + "templateName": "", + "typeName": "OglFloat4Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat4Attribute\n" + }, + { + "className": "OglFloat4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloat4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglFloat4Variable", + "templateName": "", + "typeName": "OglFloat4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0 0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec4f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloat4Variable\n" + }, + { + "className": "OglFloatAttribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatAttribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<1,5126u,float>" + ], + "shortName": "oglFloatAttribute", + "templateName": "", + "typeName": "OglFloatAttribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatAttribute\n" + }, + { + "className": "OglFloatVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable" + ], + "shortName": "oglFloatVariable", + "templateName": "", + "typeName": "OglFloatVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVariable\n" + }, + { + "className": "OglFloatVector2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVector2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable,CPUMemoryManager>>>" + ], + "shortName": "oglFloatVector2Variable", + "templateName": "", + "typeName": "OglFloatVector2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVector2Variable\n" + }, + { + "className": "OglFloatVector3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVector3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable,CPUMemoryManager>>>" + ], + "shortName": "oglFloatVector3Variable", + "templateName": "", + "typeName": "OglFloatVector3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVector3Variable\n" + }, + { + "className": "OglFloatVector4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVector4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable,CPUMemoryManager>>>" + ], + "shortName": "oglFloatVector4Variable", + "templateName": "", + "typeName": "OglFloatVector4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVector4Variable\n" + }, + { + "className": "OglFloatVectorVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglFloatVectorVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>>" + ], + "shortName": "oglFloatVectorVariable", + "templateName": "", + "typeName": "OglFloatVectorVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglFloatVectorVariable\n" + }, + { + "className": "OglInt2Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt2Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<2,5124u,Vec<2u,int>>" + ], + "shortName": "oglInt2Attribute", + "templateName": "", + "typeName": "OglInt2Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt2Attribute\n" + }, + { + "className": "OglInt2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglInt2Variable", + "templateName": "", + "typeName": "OglInt2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec2i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt2Variable\n" + }, + { + "className": "OglInt3Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt3Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<3,5124u,Vec<3u,int>>" + ], + "shortName": "oglInt3Attribute", + "templateName": "", + "typeName": "OglInt3Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt3Attribute\n" + }, + { + "className": "OglInt3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglInt3Variable", + "templateName": "", + "typeName": "OglInt3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec3i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt3Variable\n" + }, + { + "className": "OglInt4Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt4Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<4,5124u,Vec<4u,int>>" + ], + "shortName": "oglInt4Attribute", + "templateName": "", + "typeName": "OglInt4Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt4Attribute\n" + }, + { + "className": "OglInt4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglInt4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>" + ], + "shortName": "oglInt4Variable", + "templateName": "", + "typeName": "OglInt4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0 0 0 0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "Vec4i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglInt4Variable\n" + }, + { + "className": "OglIntAttribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntAttribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<1,5124u,int>" + ], + "shortName": "oglIntAttribute", + "templateName": "", + "typeName": "OglIntAttribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntAttribute\n" + }, + { + "className": "OglIntVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable" + ], + "shortName": "oglIntVariable", + "templateName": "", + "typeName": "OglIntVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVariable\n" + }, + { + "className": "OglIntVector2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVector2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglIntVectorVariable" + ], + "shortName": "oglIntVector2Variable", + "templateName": "", + "typeName": "OglIntVector2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVector2Variable\n" + }, + { + "className": "OglIntVector3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVector3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglIntVectorVariable" + ], + "shortName": "oglIntVector3Variable", + "templateName": "", + "typeName": "OglIntVector3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVector3Variable\n" + }, + { + "className": "OglIntVector4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVector4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglIntVectorVariable" + ], + "shortName": "oglIntVector4Variable", + "templateName": "", + "typeName": "OglIntVector4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVector4Variable\n" + }, + { + "className": "OglIntVectorVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglIntVectorVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>>" + ], + "shortName": "oglIntVectorVariable", + "templateName": "", + "typeName": "OglIntVectorVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglIntVectorVariable\n" + }, + { + "className": "OglLabel", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglLabel", + "namespaceName": "sofa::gl::component::rendering2d", + "parents": [ + "VisualModel" + ], + "shortName": "oglLabel", + "templateName": "", + "typeName": "OglLabel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The prefix of the text to display", + "name": "prefix", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "The text to display", + "name": "label", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "The suffix of the text to display", + "name": "suffix", + "type": "string" + }, + { + "defaultValue": "10", + "group": "", + "help": "The x position of the text on the screen", + "name": "x", + "type": "I" + }, + { + "defaultValue": "10", + "group": "", + "help": "The y position of the text on the screen", + "name": "y", + "type": "I" + }, + { + "defaultValue": "14", + "group": "", + "help": "The size of the font used to display the text on the screen", + "name": "fontsize", + "type": "I" + }, + { + "defaultValue": "0.5 0.5 0.5 1", + "group": "", + "help": "The color of the text to display. (default='gray')", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "Override the color value but one that contrast with the background color", + "name": "selectContrastingColor", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Update the display of the label every nb of time steps", + "name": "updateLabelEveryNbSteps", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering2D" + } + }, + "description": "Display 2D text in the viewport.\n" + }, + { + "className": "OglMatrix2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable>>" + ], + "shortName": "oglMatrix2Variable", + "templateName": "", + "typeName": "OglMatrix2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix2Variable\n" + }, + { + "className": "OglMatrix2x3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix2x3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix2x3Variable", + "templateName": "", + "typeName": "OglMatrix2x3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix2x3Variable\n" + }, + { + "className": "OglMatrix2x4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix2x4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix2x4Variable", + "templateName": "", + "typeName": "OglMatrix2x4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix2x4Variable\n" + }, + { + "className": "OglMatrix3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix3Variable", + "templateName": "", + "typeName": "OglMatrix3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix3Variable\n" + }, + { + "className": "OglMatrix3x2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix3x2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix3x2Variable", + "templateName": "", + "typeName": "OglMatrix3x2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix3x2Variable\n" + }, + { + "className": "OglMatrix3x4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix3x4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix3x4Variable", + "templateName": "", + "typeName": "OglMatrix3x4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix3x4Variable\n" + }, + { + "className": "OglMatrix4Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix4Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix4Variable", + "templateName": "", + "typeName": "OglMatrix4Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix4Variable\n" + }, + { + "className": "OglMatrix4VectorVariable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix4VectorVariable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglVariable,CPUMemoryManager>>>" + ], + "shortName": "oglMatrix4VectorVariable", + "templateName": "", + "typeName": "OglMatrix4VectorVariable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix4VectorVariable\n" + }, + { + "className": "OglMatrix4x2Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix4x2Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix4x2Variable", + "templateName": "", + "typeName": "OglMatrix4x2Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix4x2Variable\n" + }, + { + "className": "OglMatrix4x3Variable", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglMatrix4x3Variable", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglMatrix2Variable" + ], + "shortName": "oglMatrix4x3Variable", + "templateName": "", + "typeName": "OglMatrix4x3Variable" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set Uniform Value", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Transpose the matrix (e.g. to use row-dominant matrices in OpenGL", + "name": "transpose", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglMatrix4x3Variable\n" + }, + { + "className": "OglModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglModel", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModelImpl" + ], + "shortName": "oglModel", + "templateName": "Vec3d", + "typeName": "OglModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if rest positions must be initialized with initial positions", + "name": "initRestPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normal smoothing groups should be read from file", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normals should be updated at each iteration", + "name": "updateNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tangents should be computed at startup", + "name": "computeTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if tangents should be updated at each iteration", + "name": "updateTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if topological changes should be handled", + "name": "handleDynamicTopology", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if UV seams should be handled even when duplicate UVs are merged", + "name": "fixMergedUVSeams", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep and draw lines (false by default)", + "name": "keepLines", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "vertices of the model (only if vertices have multiple normals/texcoords, otherwise positions are used)", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "coordinates of the texture", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "tangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "bitangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "edges of the model", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "triangles of the model", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "quads of the model", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": " Path to an ogl model", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the Texture", + "name": "texturename", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Translation of the object", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Rotation of the object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Initial Scale of the object", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "1 1", + "group": "", + "help": "Scale of the texture", + "name": "scaleTex", + "type": "Vec2f" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Translation of the texture", + "name": "translationTex", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Material", + "name": "material", + "type": "Material" + }, + { + "defaultValue": "0", + "group": "", + "help": "Give Texture Coordinates without the texture binding", + "name": "putOnlyTexCoords", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "When sRGB rendering is enabled, is the texture in sRGB colorspace?", + "name": "srgbTexturing", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Groups of triangles and quads using a given material", + "name": "groups", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blend transparent parts", + "name": "blendTranslucency", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "is alpha premultiplied ?", + "name": "premultipliedAlpha", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Write into Z Buffer for Transparent Object", + "name": "writeZTransparent", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable alpha blending", + "name": "alphaBlend", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable depth testing", + "name": "depthTest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Face culling (0 = no culling, 1 = cull back faces, 2 = cull front faces)", + "name": "cullFace", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Line width (set if != 1, only for lines rendering)", + "name": "lineWidth", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "Point size (set if != 1, only for points rendering)", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth line rendering", + "name": "lineSmooth", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth point rendering", + "name": "pointSmooth", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Select types of primitives to send (necessary for some shader types such as geometry or tessellation)", + "name": "primitiveType", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how source and destination colors are combined", + "name": "blendEquation", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha source blending factors are computed", + "name": "sfactor", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha destination blending factors are computed", + "name": "dfactor", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Generic visual model for OpenGL display.\n" + }, + { + "className": "OglOITShader", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglOITShader", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglShader" + ], + "shortName": "oglOITShader", + "templateName": "", + "typeName": "OglOITShader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Turn On the shader?", + "name": "turnOn", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Will this shader be activated manually or automatically?", + "name": "passive", + "type": "bool" + }, + { + "defaultValue": "[ 'shaders/toonShading.vert' ]", + "group": "", + "help": "Set the vertex shader filename to load", + "name": "fileVertexShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "[ 'shaders/toonShading.frag' ]", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fileFragmentShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the geometry shader filename to load", + "name": "fileGeometryShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation control filename to load", + "name": "fileTessellationControlShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation evaluation filename to load", + "name": "fileTessellationEvaluationShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set input types for the geometry shader", + "name": "geometryInputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set output types for the geometry shader", + "name": "geometryOutputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set max number of vertices in output for the geometry shader", + "name": "geometryVerticesOut", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default outer level (edge subdivisions)", + "name": "tessellationOuterLevel", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default inner level (face subdivisions)", + "name": "tessellationInnerLevel", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set current active shader", + "name": "indexActiveShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "it enables writing to gl_BackColor inside a GLSL vertex shader", + "name": "backfaceWriting", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "clamp the vertex color between 0 and 1", + "name": "clampVertexColor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Shader implementating Order Independent Transparency.\n" + }, + { + "className": "OglRenderingSRGB", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglRenderingSRGB", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManager" + ], + "shortName": "oglRenderingSRGB", + "templateName": "", + "typeName": "OglRenderingSRGB" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Set the current visual context framebuffer with SRGB.\n" + }, + { + "className": "OglSceneFrame", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglSceneFrame", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel" + ], + "shortName": "oglSceneFrame", + "templateName": "", + "typeName": "OglSceneFrame" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Display the frame or not", + "name": "draw", + "type": "bool" + }, + { + "defaultValue": "Cylinders", + "group": "", + "help": "Style of the frame\n- Arrows: The frame is composed of arrows\n- Cylinders: The frame is composed of cylinders\n- CubeCones: The frame is composed of cubes and cones", + "name": "style", + "type": "SelectableItem" + }, + { + "defaultValue": "BottomRight", + "group": "", + "help": "Alignment of the frame in the view\n- BottomLeft: The scene frame is displayed in the bottom-left corner\n- BottomRight: The scene frame is displayed in the bottom-right corner\n- TopRight: The scene frame is displayed in the top-right corner\n- TopLeft: The scene frame is displayed in the top-left corner", + "name": "alignment", + "type": "SelectableItem" + }, + { + "defaultValue": "150", + "group": "", + "help": "Size of the viewport where the frame is rendered", + "name": "viewportSize", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Display a frame at the corner of the scene view.\n" + }, + { + "className": "OglShader", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglShader", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "Shader", + "VisualModel" + ], + "shortName": "oglShader", + "templateName": "", + "typeName": "OglShader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Turn On the shader?", + "name": "turnOn", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Will this shader be activated manually or automatically?", + "name": "passive", + "type": "bool" + }, + { + "defaultValue": "[ 'shaders/toonShading.vert' ]", + "group": "", + "help": "Set the vertex shader filename to load", + "name": "fileVertexShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "[ 'shaders/toonShading.frag' ]", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fileFragmentShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the geometry shader filename to load", + "name": "fileGeometryShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation control filename to load", + "name": "fileTessellationControlShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation evaluation filename to load", + "name": "fileTessellationEvaluationShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set input types for the geometry shader", + "name": "geometryInputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set output types for the geometry shader", + "name": "geometryOutputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set max number of vertices in output for the geometry shader", + "name": "geometryVerticesOut", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default outer level (edge subdivisions)", + "name": "tessellationOuterLevel", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default inner level (face subdivisions)", + "name": "tessellationInnerLevel", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set current active shader", + "name": "indexActiveShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "it enables writing to gl_BackColor inside a GLSL vertex shader", + "name": "backfaceWriting", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "clamp the vertex color between 0 and 1", + "name": "clampVertexColor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Set custom shader for the current visual context.\n" + }, + { + "className": "OglShaderDefineMacro", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "OglShaderDefineMacro", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglShaderMacro" + ], + "shortName": "oglShaderDefineMacro", + "templateName": "", + "typeName": "OglShaderDefineMacro" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Set a value for define macro", + "name": "value", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Add a custom preprocessor instruction to the shader in the current visual context.\n" + }, + { + "className": "OglShaderVisualModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglShaderVisualModel", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglModel" + ], + "shortName": "oglShaderVisualModel", + "templateName": "Vec3d", + "typeName": "OglShaderVisualModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if rest positions must be initialized with initial positions", + "name": "initRestPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normal smoothing groups should be read from file", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normals should be updated at each iteration", + "name": "updateNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tangents should be computed at startup", + "name": "computeTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if tangents should be updated at each iteration", + "name": "updateTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if topological changes should be handled", + "name": "handleDynamicTopology", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if UV seams should be handled even when duplicate UVs are merged", + "name": "fixMergedUVSeams", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep and draw lines (false by default)", + "name": "keepLines", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "vertices of the model (only if vertices have multiple normals/texcoords, otherwise positions are used)", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "coordinates of the texture", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "tangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "bitangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "edges of the model", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "triangles of the model", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "quads of the model", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": " Path to an ogl model", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the Texture", + "name": "texturename", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Translation of the object", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Rotation of the object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Initial Scale of the object", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "1 1", + "group": "", + "help": "Scale of the texture", + "name": "scaleTex", + "type": "Vec2f" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Translation of the texture", + "name": "translationTex", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Material", + "name": "material", + "type": "Material" + }, + { + "defaultValue": "0", + "group": "", + "help": "Give Texture Coordinates without the texture binding", + "name": "putOnlyTexCoords", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "When sRGB rendering is enabled, is the texture in sRGB colorspace?", + "name": "srgbTexturing", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Groups of triangles and quads using a given material", + "name": "groups", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blend transparent parts", + "name": "blendTranslucency", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "is alpha premultiplied ?", + "name": "premultipliedAlpha", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Write into Z Buffer for Transparent Object", + "name": "writeZTransparent", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable alpha blending", + "name": "alphaBlend", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable depth testing", + "name": "depthTest", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Face culling (0 = no culling, 1 = cull back faces, 2 = cull front faces)", + "name": "cullFace", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Line width (set if != 1, only for lines rendering)", + "name": "lineWidth", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "Point size (set if != 1, only for points rendering)", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth line rendering", + "name": "lineSmooth", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Enable smooth point rendering", + "name": "pointSmooth", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Select types of primitives to send (necessary for some shader types such as geometry or tessellation)", + "name": "primitiveType", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how source and destination colors are combined", + "name": "blendEquation", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha source blending factors are computed", + "name": "sfactor", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "if alpha blending is enabled this specifies how the red, green, blue, and alpha destination blending factors are computed", + "name": "dfactor", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Visual model for OpenGL display using a custom shader.\n" + }, + { + "className": "OglShadowShader", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglShadowShader", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglShader" + ], + "shortName": "oglShadowShader", + "templateName": "", + "typeName": "OglShadowShader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Turn On the shader?", + "name": "turnOn", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Will this shader be activated manually or automatically?", + "name": "passive", + "type": "bool" + }, + { + "defaultValue": "[ 'shaders/toonShading.vert' ]", + "group": "", + "help": "Set the vertex shader filename to load", + "name": "fileVertexShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "[ 'shaders/toonShading.frag' ]", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fileFragmentShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the geometry shader filename to load", + "name": "fileGeometryShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation control filename to load", + "name": "fileTessellationControlShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the tessellation evaluation filename to load", + "name": "fileTessellationEvaluationShaders", + "type": "SVector,allocator>>" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set input types for the geometry shader", + "name": "geometryInputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set output types for the geometry shader", + "name": "geometryOutputType", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Set max number of vertices in output for the geometry shader", + "name": "geometryVerticesOut", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default outer level (edge subdivisions)", + "name": "tessellationOuterLevel", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "For tessellation without control shader: default inner level (face subdivisions)", + "name": "tessellationInnerLevel", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set current active shader", + "name": "indexActiveShader", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "it enables writing to gl_BackColor inside a GLSL vertex shader", + "name": "backfaceWriting", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "clamp the vertex color between 0 and 1", + "name": "clampVertexColor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "This component sets the shader system responsible of the shadowing.\n" + }, + { + "className": "OglTexture", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglTexture", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualModel", + "ShaderElement" + ], + "shortName": "oglTexture", + "templateName": "", + "typeName": "OglTexture" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture Filename", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set the texture unit", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "1", + "group": "", + "help": "enabled ?", + "name": "enabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Repeat Texture ?", + "name": "repeat", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Interpolate Texture ?", + "name": "linearInterpolation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Generate mipmaps ?", + "name": "generateMipmaps", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "SRGB colorspace ?", + "name": "srgbColorspace", + "type": "bool" + }, + { + "defaultValue": "-1000", + "group": "", + "help": "Minimum mipmap lod ?", + "name": "minLod", + "type": "f" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Maximum mipmap lod ?", + "name": "maxLod", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Width of procedural Texture", + "name": "proceduralTextureWidth", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Height of procedural Texture", + "name": "proceduralTextureHeight", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Nb bits per color", + "name": "proceduralTextureNbBits", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Data of procedural Texture ", + "name": "proceduralTextureData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-X cubemap face", + "name": "cubemapFilenamePosX", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-Y cubemap face", + "name": "cubemapFilenamePosY", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-Z cubemap face", + "name": "cubemapFilenamePosZ", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-X cubemap face", + "name": "cubemapFilenameNegX", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-Y cubemap face", + "name": "cubemapFilenameNegY", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-Z cubemap face", + "name": "cubemapFilenameNegZ", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Load a texture to be used in a shader.\n" + }, + { + "className": "OglTexture2D", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglTexture2D", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglTexture" + ], + "shortName": "oglTexture2D", + "templateName": "", + "typeName": "OglTexture2D" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture Filename", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set the texture unit", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "1", + "group": "", + "help": "enabled ?", + "name": "enabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Repeat Texture ?", + "name": "repeat", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Interpolate Texture ?", + "name": "linearInterpolation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Generate mipmaps ?", + "name": "generateMipmaps", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "SRGB colorspace ?", + "name": "srgbColorspace", + "type": "bool" + }, + { + "defaultValue": "-1000", + "group": "", + "help": "Minimum mipmap lod ?", + "name": "minLod", + "type": "f" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Maximum mipmap lod ?", + "name": "maxLod", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Width of procedural Texture", + "name": "proceduralTextureWidth", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Height of procedural Texture", + "name": "proceduralTextureHeight", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Nb bits per color", + "name": "proceduralTextureNbBits", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Data of procedural Texture ", + "name": "proceduralTextureData", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-X cubemap face", + "name": "cubemapFilenamePosX", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-Y cubemap face", + "name": "cubemapFilenamePosY", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of positive-Z cubemap face", + "name": "cubemapFilenamePosZ", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-X cubemap face", + "name": "cubemapFilenameNegX", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-Y cubemap face", + "name": "cubemapFilenameNegY", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture filename of negative-Z cubemap face", + "name": "cubemapFilenameNegZ", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Texture2D Filename", + "name": "texture2DFilename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Load a 2d texture to be used in a shader.\n" + }, + { + "className": "OglTexturePointer", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglTexturePointer", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualModel", + "ShaderElement" + ], + "shortName": "oglTexturePointer", + "templateName": "", + "typeName": "OglTexturePointer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set the texture unit", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "1", + "group": "", + "help": "enabled ?", + "name": "enabled", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "OglTexture", + "help": "OglTexture", + "name": "oglTexture" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Pointer to a OglTexture, useful for sharing a texture between multiple shaders.\n" + }, + { + "className": "OglUInt2Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglUInt2Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<2,5125u,Vec<2u,unsigned int>>" + ], + "shortName": "oglUInt2Attribute", + "templateName": "", + "typeName": "OglUInt2Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglUInt2Attribute\n" + }, + { + "className": "OglUInt3Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglUInt3Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<3,5125u,Vec<3u,unsigned int>>" + ], + "shortName": "oglUInt3Attribute", + "templateName": "", + "typeName": "OglUInt3Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglUInt3Attribute\n" + }, + { + "className": "OglUInt4Attribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglUInt4Attribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<4,5125u,Vec<4u,unsigned int>>" + ], + "shortName": "oglUInt4Attribute", + "templateName": "", + "typeName": "OglUInt4Attribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglUInt4Attribute\n" + }, + { + "className": "OglUIntAttribute", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglUIntAttribute", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "OglAttribute<1,5125u,unsigned int>" + ], + "shortName": "oglUIntAttribute", + "templateName": "", + "typeName": "OglUIntAttribute" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Set an ID name", + "name": "id", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the index of the desired shader you want to apply this parameter", + "name": "indexShader", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "internal Data", + "name": "value", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Activate handling of topological changes on the values of this attribute (resizes only)", + "name": "handleDynamicTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "OglUIntAttribute\n" + }, + { + "className": "OglViewport", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OglViewport", + "namespaceName": "sofa::gl::component::rendering2d", + "parents": [ + "VisualManager" + ], + "shortName": "oglViewport", + "templateName": "", + "typeName": "OglViewport" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Viewport position", + "name": "screenPosition", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "Viewport size", + "name": "screenSize", + "type": "Vec2I" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Camera's position in eye's space", + "name": "cameraPosition", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "", + "help": "Camera's orientation", + "name": "cameraOrientation", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's rigid coord", + "name": "cameraRigid", + "type": "RigidCoord3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's ZNear", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's ZFar", + "name": "zFar", + "type": "d" + }, + { + "defaultValue": "60", + "group": "", + "help": "Field of View (Y axis)", + "name": "fovy", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable visibility of the viewport", + "name": "enabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, viewport will be hidden if advancedRendering visual flag is not enabled", + "name": "advancedRendering", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use a FBO to render the viewport", + "name": "useFBO", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Swap this viewport with the main view", + "name": "swapMainView", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw a frame representing the camera (see it in main viewport)", + "name": "drawCamera", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering2D" + } + }, + "description": "Set an additional viewport into the main one.\n" + }, + { + "className": "OrderIndependentTransparencyManager", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "OrderIndependentTransparencyManager", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManager" + ], + "shortName": "orderIndependentTransparencyManager", + "templateName": "", + "typeName": "OrderIndependentTransparencyManager" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Depth scale", + "name": "depthScale", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Order Independent Transparency Manager (to be used with OglOITShader).\n" + }, + { + "className": "OscillatingTorsionPressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "OscillatingTorsionPressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "oscillatingTorsionPressureFF", + "templateName": "Vec3d", + "typeName": "OscillatingTorsionPressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Map between triangle indices and their pressure", + "name": "trianglePressureMap", + "type": "vector,Vec<3u,double>,double>>TrianglePressureInformation,CPUMemoryManager,Vec<3u,double>,double>>TrianglePressureInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Moment force applied on the entire surface", + "name": "moment", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of triangles separated with commas where a pressure is applied", + "name": "triangleList", + "type": "vector" + }, + { + "defaultValue": "0 0 1", + "group": "", + "help": "Axis of rotation and normal direction for the plane selection of triangles", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Center of rotation", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Strength of the penalty force", + "name": "penalty", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "frequency of oscillation", + "name": "frequency", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum distance from the origin along the normal direction", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum distance from the origin along the normal direction", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw triangles which have a given pressure", + "name": "showForces", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "OscillatingTorsionPressure.\n" + }, + { + "className": "OscillatorProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "OscillatorProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "oscillatorProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "OscillatorProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Define a sequence of oscillating particules: \n[index, Mean(x,y,z), amplitude(x,y,z), pulsation, phase]", + "name": "oscillators", + "type": "vector>Oscillator,CPUMemoryManager>Oscillator>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "OscillatorProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "oscillatorProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "OscillatorProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Define a sequence of oscillating particules: \n[index, Mean(x,y,z), amplitude(x,y,z), pulsation, phase]", + "name": "oscillators", + "type": "vector,Vec<3u,double>,double>>Oscillator,CPUMemoryManager,Vec<3u,double>,double>>Oscillator>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Apply a sinusoidal trajectory to given points.\n" + }, + { + "className": "PCGLinearSolver", + "creator": { + "GraphScattered": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "PCGLinearSolver", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixLinearSolver" + ], + "shortName": "pCGLinearSolver", + "templateName": "GraphScattered", + "typeName": "PCGLinearSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use a preconditioner", + "name": "use_precond", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to precondition the conjugate gradient", + "name": "preconditioner" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "Linear solver using the preconditioned conjugate gradient iterative algorithm.\n" + }, + { + "className": "PairBoxROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PairBoxROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "pairBoxROI", + "templateName": "Rigid3d", + "typeName": "PairBoxROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Inclusive box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "inclusiveBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "", + "help": "Included box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "includedBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertices of the mesh loaded", + "name": "meshPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Inclusive Box", + "name": "drawInclusiveBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Included Box", + "name": "drawIncludedBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Draw Size", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PairBoxROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "pairBoxROI", + "templateName": "Vec3d", + "typeName": "PairBoxROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Inclusive box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "inclusiveBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "", + "help": "Included box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "includedBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertices of the mesh loaded", + "name": "meshPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Inclusive Box", + "name": "drawInclusiveBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Included Box", + "name": "drawIncludedBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Draw Size", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PairBoxROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "pairBoxROI", + "templateName": "Vec6d", + "typeName": "PairBoxROI,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Inclusive box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "inclusiveBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "", + "help": "Included box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "includedBox", + "type": "Vec6d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertices of the mesh loaded", + "name": "meshPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Inclusive Box", + "name": "drawInclusiveBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Included Box", + "name": "drawIncludedBox", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "Draw Size", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find all the points located between two boxes.\n" + }, + { + "className": "ParabolicProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "ParabolicProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "parabolicProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "ParabolicProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "first point of the parabol", + "name": "P1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second point of the parabol", + "name": "P2", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "third point of the parabol", + "name": "P3", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin Time of the motion", + "name": "BeginTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End Time of the motion", + "name": "EndTime", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "ParabolicProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "parabolicProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "ParabolicProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "first point of the parabol", + "name": "P1", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "second point of the parabol", + "name": "P2", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "third point of the parabol", + "name": "P3", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin Time of the motion", + "name": "BeginTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End Time of the motion", + "name": "EndTime", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Apply a parabolic trajectory to given points.\n" + }, + { + "className": "ParallelBVHNarrowPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "ParallelBVHNarrowPhase", + "namespaceName": "multithreading::component::collision::detection::algorithm", + "parents": [ + "BVHNarrowPhase" + ], + "shortName": "parallelBVHNarrowPhase", + "templateName": "", + "typeName": "ParallelBVHNarrowPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel version of the narrow phase collision detection based on boundary volume hierarchy.\n" + }, + { + "className": "ParallelBruteForceBroadPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "ParallelBruteForceBroadPhase", + "namespaceName": "multithreading::component::collision::detection::algorithm", + "parents": [ + "BruteForceBroadPhase" + ], + "shortName": "parallelBruteForceBroadPhase", + "templateName": "", + "typeName": "ParallelBruteForceBroadPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "if not empty, objects that do not intersect this bounding-box will be ignored", + "name": "box", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel version of the collision detection using extensive pair-wise tests performed concurrently.\n" + }, + { + "className": "ParallelCGLinearSolver", + "creator": { + "ParallelCompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "ParallelCGLinearSolver", + "namespaceName": "multithreading::component::linearsolver::iterative", + "parents": [ + "CGLinearSolver,CRSMechanicalPolicy>,FullVector>", + "Base" + ], + "shortName": "parallelCGLinearSolver", + "templateName": "ParallelCompressedRowSparseMatrixMat3x3d", + "typeName": "ParallelCGLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "MultiThreading" + }, + "ParallelCompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "ParallelCGLinearSolver", + "namespaceName": "multithreading::component::linearsolver::iterative", + "parents": [ + "CGLinearSolver,FullVector>", + "Base" + ], + "shortName": "parallelCGLinearSolver", + "templateName": "ParallelCompressedRowSparseMatrixd", + "typeName": "ParallelCGLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "25", + "group": "", + "help": "Maximum number of iterations after which the iterative descent of the Conjugate Gradient must stop", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Desired accuracy of the Conjugate Gradient solution evaluating: |r|²/|b|² (ratio of current residual norm over initial residual norm)", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Minimum value of the denominator (pT A p)^ in the conjugate Gradient solution", + "name": "threshold", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use previous solution as initial solution, which may improve the initial guess if your system is evolving smoothly", + "name": "warmStart", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Graph of residuals at each iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel version of the linear solver using the conjugate gradient iterative algorithm.\n" + }, + { + "className": "ParallelHexahedronFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ParallelHexahedronFEMForceField", + "namespaceName": "multithreading::component::forcefield::solidmechanics::fem::elastic", + "parents": [ + "HexahedronFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "parallelHexahedronFEMFF", + "templateName": "Vec3d", + "typeName": "ParallelHexahedronFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"large\" or \"polar\" or \"small\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0.15", + "group": "Visualization", + "help": "size of the hexa", + "name": "drawPercentageOffset", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Stiffness matrices per element (K_i)", + "name": "stiffnessMatrices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel implementation of a linear elastic material using hexahedral finite elements.\n" + }, + { + "className": "ParallelMeshSpringForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelMeshSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "MeshSpringForceField,Vec<1u,double>,double>>", + "ParallelSpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "parallelMeshSpringFF", + "templateName": "Vec1d", + "typeName": "ParallelMeshSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelMeshSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "MeshSpringForceField,Vec<2u,double>,double>>", + "ParallelSpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "parallelMeshSpringFF", + "templateName": "Vec2d", + "typeName": "ParallelMeshSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelMeshSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "MeshSpringForceField,Vec<3u,double>,double>>", + "ParallelSpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "parallelMeshSpringFF", + "templateName": "Vec3d", + "typeName": "ParallelMeshSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Lines", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Lines", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Triangles", + "name": "trianglesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Triangles", + "name": "trianglesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Quads", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Quads", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Tetrahedra", + "name": "tetrahedraStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Tetrahedra", + "name": "tetrahedraDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stiffness for the Cubes", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Damping for the Cubes", + "name": "cubesDamping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only consider elongation", + "name": "noCompression", + "type": "bool" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Min range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMinElongationRange", + "type": "d" + }, + { + "defaultValue": "15", + "group": "Visualization", + "help": "Max range of elongation (red eongation - blue neutral - green compression)", + "name": "drawMaxElongationRange", + "type": "d" + }, + { + "defaultValue": "8", + "group": "Visualization", + "help": "Size of drawed lines", + "name": "drawSpringSize", + "type": "d" + }, + { + "defaultValue": "4294967295 4294967295", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel stiff springs acting along the edges of a mesh.\n" + }, + { + "className": "ParallelSpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField>" + ], + "shortName": "parallelSpringFF", + "templateName": "Rigid3d", + "typeName": "ParallelSpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "parallelSpringFF", + "templateName": "Vec1d", + "typeName": "ParallelSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "parallelSpringFF", + "templateName": "Vec2d", + "typeName": "ParallelSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "parallelSpringFF", + "templateName": "Vec3d", + "typeName": "ParallelSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "ParallelSpringForceField", + "namespaceName": "multithreading::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<6u,double>,double>>" + ], + "shortName": "parallelSpringFF", + "templateName": "Vec6d", + "typeName": "ParallelSpringForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel stiff springs.\n" + }, + { + "className": "ParallelTetrahedronFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "ParallelTetrahedronFEMForceField", + "namespaceName": "multithreading::component::forcefield::solidmechanics::fem::elastic", + "parents": [ + "TetrahedronFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "parallelTetrahedronFEMFF", + "templateName": "Vec3d", + "typeName": "ParallelTetrahedronFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"small\", \"large\" (by QR), \"polar\" or \"svd\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Allow specification of different stiffness per element. If there are N element and M values are specified, the youngModulus factor for element i would be localStiffnessFactor[i*M/N]", + "name": "localStiffnessFactor", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "computeGlobalMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Plastic Max Threshold (2-norm of the strain)", + "name": "plasticMaxThreshold", + "type": "d" + }, + { + "defaultValue": "0.0001", + "group": "", + "help": "Plastic Yield Threshold (2-norm of the strain)", + "name": "plasticYieldThreshold", + "type": "d" + }, + { + "defaultValue": "0.9", + "group": "", + "help": "Plastic Creep Factor * dt [0,1]. Warning this factor depends on dt.", + "name": "plasticCreep", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Heterogeneous Tetra in different color", + "name": "drawHeterogeneousTetra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute and display von Mises stress: 0: no computations, 1: using corotational strain, 2: using full Green strain. Set listening=1", + "name": "computeVonMisesStress", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per element", + "name": "vonMisesPerElement", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per node", + "name": "vonMisesPerNode", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of colors describing the VonMises stress", + "name": "vonMisesStressColors", + "type": "vector" + }, + { + "defaultValue": "Blue to Red", + "group": "Visualization", + "help": "Color map used to show stress values", + "name": "showStressColorMap", + "type": "string" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Alpha for vonMises visualisation", + "name": "showStressAlpha", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw points showing vonMises stress interpolated in nodes", + "name": "showVonMisesStressPerNode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw elements showing vonMises stress interpolated in nodes", + "name": "showVonMisesStressPerNodeColorMap", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw triangles showing vonMises stress interpolated in elements", + "name": "showVonMisesStressPerElement", + "type": "bool" + }, + { + "defaultValue": "0.333", + "group": "Visualization", + "help": "draw gap between elements (when showWireFrame is disabled) [0,1]: 0: no gap, 1: no element", + "name": "showElementGapScale", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "update structures (precomputed in init) using stiffness parameters in each iteration (set listening=1)", + "name": "updateStiffness", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If not yet initialized, the main task scheduler is initialized with this number of threads. 0 corresponds to the number of available cores on the CPU. -n (minus) corresponds to the number of available cores on the CPU minus the provided number.", + "name": "nbThreads", + "type": "i" + }, + { + "defaultValue": "_default", + "group": "", + "help": "Type of task scheduler to use.", + "name": "taskSchedulerType", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "MultiThreading" + } + }, + "description": "Parallel implementation of a linear elastic material using tetrahedral finite elements..\n" + }, + { + "className": "PartialFixedProjectiveConstraint", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Rigid2d", + "typeName": "PartialFixedProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "PartialFixedProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint,Vec<1u,double>,double>>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "PartialFixedProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint,Vec<2u,double>,double>>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PartialFixedProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint,Vec<3u,double>,double>>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PartialFixedProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialFixedProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "FixedProjectiveConstraint,Vec<6u,double>,double>>" + ], + "shortName": "partialFixedProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "PartialFixedProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "draw or not the fixed constraints", + "name": "showObject", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, projects not only a constant but a zero velocity", + "name": "activate_projectVelocity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are fixed: true (or 1) for fixed, false (or 0) for free", + "name": "fixedDirections", + "type": "fixed_array" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate project velocity to maintain a constant velocity", + "name": "projectVelocity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Attach given particles to their initial positions, in some directions only.\n" + }, + { + "className": "PartialLinearMovementProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "PartialLinearMovementProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "PartialLinearMovementProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PartialLinearMovementProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PartialLinearMovementProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PartialLinearMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "partialLinearMovementProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "PartialLinearMovementProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "key times for the movements", + "name": "keyTimes", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements corresponding to the key times", + "name": "movements", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Visualization of the movement to be applied to constrained dofs.", + "name": "showMovement", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Take into account the linear movement between the constrained points", + "name": "linearMovementBetweenNodesInIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The main indice node in the list of constrained nodes, it defines how to apply the linear movement between this constrained nodes ", + "name": "mainIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the minimum displacement ", + "name": "minDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The indice node in the list of constrained nodes, which is imposed the maximum displacement ", + "name": "maxDepIndice", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "The imposed displacement on macro nodes", + "name": "imposedDisplacmentOnMacroNodes", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in X-direction", + "name": "X0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Y-direction", + "name": "Y0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Size of specimen in Z-direction", + "name": "Z0", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Defines the directions in which the particles are moved: true (or 1) for fixed, false (or 0) for free", + "name": "movedDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Impose a motion to given DOFs (translation and rotation) in some directions only.\n" + }, + { + "className": "PatchTestMovementProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PatchTestMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "patchTestMovementProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "PatchTestMovementProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the mesh", + "name": "meshIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin time of the bilinear constraint", + "name": "beginConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End time of the bilinear constraint", + "name": "endConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the constrained points", + "name": "constrainedPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements of the corners of the grid", + "name": "cornerMovements", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "corner points for computing constraint", + "name": "cornerPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "draw constrained points", + "name": "drawConstrainedPoints", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PatchTestMovementProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "patchTestMovementProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PatchTestMovementProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the mesh", + "name": "meshIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the constrained points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Begin time of the bilinear constraint", + "name": "beginConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "End time of the bilinear constraint", + "name": "endConstraintTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the constrained points", + "name": "constrainedPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "movements of the corners of the grid", + "name": "cornerMovements", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "corner points for computing constraint", + "name": "cornerPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "draw constrained points", + "name": "drawConstrainedPoints", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Impose a motion to all the boundary points of a mesh.\n" + }, + { + "className": "PauseAnimationOnEvent", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "PauseAnimationOnEvent", + "namespaceName": "sofa::component::sceneutility", + "parents": [ + "PauseAnimation" + ], + "shortName": "pauseAnimationOnEvent", + "templateName": "", + "typeName": "PauseAnimationOnEvent" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SceneUtility" + } + }, + "description": "This component pauses the simulation when receiving a PauseEvent.\n" + }, + { + "className": "PenalityContactForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "PenalityContactForceField", + "namespaceName": "sofa::component::collision::response::contact", + "parents": [ + "PairInteractionForceField,Vec<3u,double>,double>>" + ], + "shortName": "penalityContactFF", + "templateName": "Vec3d", + "typeName": "PenalityContactForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Collision.Response.Contact" + } + }, + "description": "Contact using repulsive springs.\n" + }, + { + "className": "PlaneForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "planeFF", + "templateName": "Rigid3d", + "typeName": "PlaneForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "planeFF", + "templateName": "Vec1d", + "typeName": "PlaneForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec1d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "planeFF", + "templateName": "Vec2d", + "typeName": "PlaneForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec2d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "planeFF", + "templateName": "Vec3d", + "typeName": "PlaneForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PlaneForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "planeFF", + "templateName": "Vec6d", + "typeName": "PlaneForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "plane normal. (default=[0,1,0])", + "name": "normal", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "", + "help": "plane d coef. (default=0)", + "name": "d", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness. (default=500)", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping. (default=5)", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if non-null , the max force that can be applied to the object. (default=0)", + "name": "maxForce", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the plane force field is applied on both sides. (default=false)", + "name": "bilateral", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "enable/disable drawing of plane. (default=false)", + "name": "showPlane", + "type": "bool" + }, + { + "defaultValue": "0 0.5 0.2 1", + "group": "", + "help": "plane color. (default=[0.0,0.5,0.2,1.0])", + "name": "planeColor", + "type": "RGBAColor" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "plane display size if draw is enabled. (default=10)", + "name": "showPlaneSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Repulsion along the normal to a plane.\n" + }, + { + "className": "PlaneProjectiveConstraint", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "planeProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PlaneProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "A point in the plane", + "name": "origin", + "type": "Vec2d" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Normal vector to the plane", + "name": "normal", + "type": "Vec2d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PlaneProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "planeProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PlaneProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the fixed points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "A point in the plane", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Normal vector to the plane", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Project particles to an affine plane.\n" + }, + { + "className": "PlaneROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PlaneROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "planeROI", + "templateName": "Rigid3d", + "typeName": "PlaneROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of planes defined by 3 points and a depth distance", + "name": "plane", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Box(es)", + "name": "drawBoxes", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PlaneROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "planeROI", + "templateName": "Vec3d", + "typeName": "PlaneROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of planes defined by 3 points and a depth distance", + "name": "plane", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Box(es)", + "name": "drawBoxes", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the primitives inside a given plane.\n" + }, + { + "className": "PlasticMaterial", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "PlasticMaterial", + "namespaceName": "sofa::component::solidmechanics::fem::hyperelastic::material", + "parents": [ + "BaseMaterial" + ], + "shortName": "plasticMaterial", + "templateName": "", + "typeName": "PlasticMaterial" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "3000", + "group": "", + "help": "Young modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.HyperElastic" + } + }, + "description": "Plastic material.\n" + }, + { + "className": "PointCollisionModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "PointCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "pointCollisionModel", + "templateName": "Vec3d", + "typeName": "PointCollisionModel,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the point model (when surface normals are defined on these points)", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate computation of normal vectors (required for some collision detection algorithms)", + "name": "computeNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display Collision Model Points free position(in green)", + "name": "displayFreePosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model which represents a set of points.\n" + }, + { + "className": "PointProjectiveConstraint", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PointProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "pointProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "PointProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Target of the projection", + "name": "point", + "type": "Vec1d" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PointProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "pointProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PointProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Target of the projection", + "name": "point", + "type": "Vec2d" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PointProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "pointProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PointProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Target of the projection", + "name": "point", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PointProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "pointProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "PointProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points to project", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Target of the projection", + "name": "point", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "", + "help": "filter all the DOF to implement a fixed object", + "name": "fixAll", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Size of the rendered particles (0 -> point based rendering, >0 -> radius of spheres)", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Project particles to a point\n" + }, + { + "className": "PointSetGeometryAlgorithms", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "GeometryAlgorithms" + ], + "shortName": "pointSetGeometryAlgorithms", + "templateName": "Vec1d", + "typeName": "PointSetGeometryAlgorithms,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "GeometryAlgorithms" + ], + "shortName": "pointSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "PointSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "GeometryAlgorithms" + ], + "shortName": "pointSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "PointSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to a point topology.\n" + }, + { + "className": "PointSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TopologyContainer" + ], + "shortName": "pointSetTopologyContainer", + "templateName": "", + "typeName": "PointSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to a point topology.\n" + }, + { + "className": "PointSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "PointSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TopologyModifier" + ], + "shortName": "pointSetTopologyModifier", + "templateName": "", + "typeName": "PointSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to a point topology.\n" + }, + { + "className": "PointSplatModel", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "PointSplatModel", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel" + ], + "shortName": "pointSplatModel", + "templateName": "", + "typeName": "PointSplatModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of the spheres.", + "name": "radius", + "type": "f" + }, + { + "defaultValue": "32", + "group": "", + "help": "Size of the billboard texture.", + "name": "textureSize", + "type": "i" + }, + { + "defaultValue": "1", + "group": "", + "help": "Opacity of the billboards. 1.0 is 100% opaque.", + "name": "alpha", + "type": "f" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Billboard color.(default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "scalar field modulating point colors", + "name": "pointData", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Visualization for a cloud of points using splatting.\n" + }, + { + "className": "PointsFromIndices", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "PointsFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "pointsFromIndices", + "templateName": "Vec3d", + "typeName": "PointsFromIndices,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Coordinates of the points contained in indices", + "name": "indices_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the points given a list of indices.\n" + }, + { + "className": "PolynomialRestShapeSpringsForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "PolynomialRestShapeSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "polynomialRestShapeSpringsFF", + "templateName": "Vec3d", + "typeName": "PolynomialRestShapeSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points controlled by the rest shape springs", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points from the external Mechanical State that define the rest shape springs", + "name": "external_points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coefficients for all spring polynomials", + "name": "polynomialStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "vector of values that show polynomials degrees", + "name": "polynomialDegree", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display. (default=0.02)", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "initial virtual length of the spring", + "name": "initialLength", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "denominator correction adding shift value", + "name": "smoothShift", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "denominator correction adding scale", + "name": "smoothScale", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "MechanicalState", + "help": "rest_shape can be defined by the position of an external Mechanical State", + "name": "external_rest_shape" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Simple elastic springs applied to given degrees of freedom between their current and rest shape position.\n" + }, + { + "className": "PolynomialSpringsForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "PolynomialSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<3u,double>,double>>" + ], + "shortName": "polynomialSpringsFF", + "templateName": "Vec3d", + "typeName": "PolynomialSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points related to the first object", + "name": "firstObjectPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points related to the second object", + "name": "secondObjectPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "coefficients for all spring polynomials", + "name": "polynomialStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "vector of values that show polynomials degrees", + "name": "polynomialDegree", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag to compute initial length for springs", + "name": "computeZeroLength", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "initial length for springs", + "name": "zeroLength", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Indicates if object compresses without any reaction force", + "name": "compressible", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Scale for indices display (default=0.02)", + "name": "showIndicesScale", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Simple elastic springs applied to given degrees of freedom between their current and rest shape position.\n" + }, + { + "className": "PositionBasedDynamicsProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "PositionBasedDynamicsProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec1d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<1u,double>,double>>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Vec1d", + "typeName": "PositionBasedDynamicsProjectiveConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec2d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<2u,double>,double>>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Vec2d", + "typeName": "PositionBasedDynamicsProjectiveConstraint,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<3u,double>,double>>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Vec3d", + "typeName": "PositionBasedDynamicsProjectiveConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + }, + "Vec6d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "PositionBasedDynamicsProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet,Vec<6u,double>,double>>" + ], + "shortName": "positionBasedDynamicsProjectiveConstraint", + "templateName": "Vec6d", + "typeName": "PositionBasedDynamicsProjectiveConstraint,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Blending between current pos and target pos.", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Target positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Velocities.", + "name": "velocity", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Old positions.", + "name": "old_position", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Position-based dynamics\n" + }, + { + "className": "PositionalLight", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "PositionalLight", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "Light" + ], + "shortName": "positionalLight", + "templateName": "", + "typeName": "PositionalLight" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Set the color of the light. (default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Set size for shadow texture ", + "name": "shadowTextureSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Light Source", + "name": "drawSource", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZNear", + "name": "zNear", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZFar", + "name": "zFar", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Enable Shadow from this light", + "name": "shadowsEnabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Turn on Soft Shadow from this light", + "name": "softShadows", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Shadow Factor (decrease/increase darkness)", + "name": "shadowFactor", + "type": "f" + }, + { + "defaultValue": "0.05", + "group": "", + "help": "[Shadowing] (VSM only) Light bleeding parameter", + "name": "VSMLightBleeding", + "type": "f" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "[Shadowing] (VSM only) Minimum variance parameter", + "name": "VSMMinVariance", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Texture unit for the generated shadow texture", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Fix light position from the camera", + "name": "fixed", + "type": "bool" + }, + { + "defaultValue": "-0.7 0.3 0", + "group": "", + "help": "Set the position of the light", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the attenuation of the light", + "name": "attenuation", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "A positional light illuminating the scene.The light has a location from which the ray are starting in all direction (cannot cast shadows for now)\n" + }, + { + "className": "PostProcessManager", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "PostProcessManager", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualModel" + ], + "shortName": "postProcessManager", + "templateName": "", + "typeName": "PostProcessManager" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set zNear distance (for Depth Buffer)", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Set zFar distance (for Depth Buffer)", + "name": "zFar", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Add a post process pass to the actual rendering.\n" + }, + { + "className": "PrecomputedConstraintCorrection", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "PrecomputedConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection>" + ], + "shortName": "precomputedConstraintCorrection", + "templateName": "Rigid3d", + "typeName": "PrecomputedConstraintCorrection>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Project the precomputed matrix with a rotation matrix", + "name": "rotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "restDeformations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, always recompute the compliance", + "name": "recompute", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale on computed node's frame", + "name": "debugViewFrameScale", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Precomputed compliance matrix data file", + "name": "fileCompliance", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "If not empty, the compliance will be saved in this repertory", + "name": "fileDir", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec1d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "PrecomputedConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<1u,double>,double>>" + ], + "shortName": "precomputedConstraintCorrection", + "templateName": "Vec1d", + "typeName": "PrecomputedConstraintCorrection,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Project the precomputed matrix with a rotation matrix", + "name": "rotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "restDeformations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, always recompute the compliance", + "name": "recompute", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale on computed node's frame", + "name": "debugViewFrameScale", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Precomputed compliance matrix data file", + "name": "fileCompliance", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "If not empty, the compliance will be saved in this repertory", + "name": "fileDir", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "PrecomputedConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<3u,double>,double>>" + ], + "shortName": "precomputedConstraintCorrection", + "templateName": "Vec3d", + "typeName": "PrecomputedConstraintCorrection,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Project the precomputed matrix with a rotation matrix", + "name": "rotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "restDeformations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, always recompute the compliance", + "name": "recompute", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale on computed node's frame", + "name": "debugViewFrameScale", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Precomputed compliance matrix data file", + "name": "fileCompliance", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "If not empty, the compliance will be saved in this repertory", + "name": "fileDir", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + } + }, + "description": "Component precomputing constraint forces within a simulated body using the compliance method. It approximates the compliance matrix by a precomputed matrix inverse. The approximation can be updated based on the rotation of elements.\n" + }, + { + "className": "PrecomputedLinearSolver", + "creator": { + "FullVector": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "PrecomputedLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "precomputedLinearSolver", + "templateName": "FullVector", + "typeName": "PrecomputedLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use two step algorithm to compute JMinvJt", + "name": "jmjt_twostep", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Dump system matrix in a file", + "name": "use_file", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Linear system solver based on a precomputed inverse matrix\n" + }, + { + "className": "PrecomputedMatrixSystem", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "PrecomputedMatrixSystem", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "precomputedMatrixSystem", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "PrecomputedMatrixSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Precomputed matrix system.\n" + }, + { + "className": "PrecomputedWarpPreconditioner", + "creator": { + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "PrecomputedWarpPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "precomputedWarpPreconditioner", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "PrecomputedWarpPreconditioner,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use two step algorithm to compute JMinvJt", + "name": "jmjt_twostep", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Dump system matrix in a file", + "name": "use_file", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Share the compliance matrix in memory if they are related to the same file (WARNING: might require to reload Sofa when opening a new scene...)", + "name": "share_matrix", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use Rotations around the preconditioner", + "name": "use_rotations", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale rotations in draw function", + "name": "draw_rotations_scale", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to precompute the first matrix", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear system solver based on a precomputed inverse matrix, wrapped by a per-node rotation matrix.\n" + }, + { + "className": "PreconditionedMatrixFreeSystem", + "creator": { + "GraphScattered": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "PreconditionedMatrixFreeSystem", + "namespaceName": "sofa::component::linearsolver::iterative", + "parents": [ + "MatrixFreeSystem" + ], + "shortName": "preconditionedMatrixFreeSystem", + "templateName": "GraphScattered", + "typeName": "PreconditionedMatrixFreeSystem" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Rate of update of the preconditioner matrix, in number of time steps or Newton iterations", + "name": "assemblingRate", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "Link toward the linear system of the preconditioner", + "name": "preconditionerSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Iterative" + } + }, + "description": "A matrix-free linear system that must be used with a preconditioned matrix-free solver\n" + }, + { + "className": "ProjectiveTransformEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ProjectiveTransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "projectiveTransformEngine", + "templateName": "Vec3d", + "typeName": "ProjectiveTransformEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of projected 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "projection matrix", + "name": "proj_mat", + "type": "Mat3x4d" + }, + { + "defaultValue": "1", + "group": "Inputs", + "help": "focal distance ", + "name": "focal_distance", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Project the position of 3d points onto a plane according to a projection matrix.\n" + }, + { + "className": "ProximityROI", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ProximityROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "proximityROI", + "templateName": "Vec3d", + "typeName": "ProximityROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Maximum number of points to select", + "name": "N", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "distance between the points contained in the ROI and the closest center.", + "name": "distance", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw sphere(s)", + "name": "drawSphere", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the N closest primitives from a given position.\n" + }, + { + "className": "Quad2TriangleTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Quad2TriangleTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "quad2TriangleTopologicalMapping", + "templateName": "", + "typeName": "Quad2TriangleTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where QuadSetTopology is converted to TriangleSetTopology\n" + }, + { + "className": "QuadBendingFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "QuadBendingFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "quadBendingFEMFF", + "templateName": "Vec3d", + "typeName": "QuadBendingFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal quad data", + "name": "quadInfo", + "type": "vector,Vec<3u,double>,double>>QuadInformation,CPUMemoryManager,Vec<3u,double>,double>>QuadInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal point data", + "name": "vertexInfo", + "type": "vector,Vec<3u,double>,double>>VertexInformation,CPUMemoryManager,Vec<3u,double>,double>>VertexInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + }, + { + "defaultValue": "small", + "group": "", + "help": "large: large displacements, small: small displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "Poisson ratio in Hooke's law (vector)", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young modulus in Hooke's law (vector)", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the elements", + "name": "thickness", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Bending Quad finite elements\n" + }, + { + "className": "QuadBendingSprings", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "QuadBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "quadBendingSprings", + "templateName": "Vec2d", + "typeName": "QuadBendingSprings,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "QuadBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "quadBendingSprings", + "templateName": "Vec3d", + "typeName": "QuadBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a quad mesh to prevent bending.\n" + }, + { + "className": "QuadPressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "QuadPressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "quadPressureFF", + "templateName": "Vec3d", + "typeName": "QuadPressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of quads separated with commas where a pressure is applied", + "name": "quadList", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction for the plane selection of quads", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Minimum distance from the origin along the normal direction", + "name": "dmin", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Maximum distance from the origin along the normal direction", + "name": "dmax", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw quads which have a given pressure", + "name": "showForces", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Map between quad indices and their pressure", + "name": "quadPressureMap", + "type": "vector,Vec<3u,double>,double>>QuadPressureInformation,CPUMemoryManager,Vec<3u,double>,double>>QuadPressureInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Pressure applied on a quadrangular geometry.\n" + }, + { + "className": "QuadSetGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "QuadSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "quadSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "QuadSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "QuadSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "quadSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "QuadSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Quad indices", + "name": "showQuadIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the quads in the topology", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0 0.4 0.4 1", + "group": "Visualization", + "help": "RGB code color used to draw quads.", + "name": "drawColorQuads", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to a quad topology.\n" + }, + { + "className": "QuadSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "QuadSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetTopologyContainer" + ], + "shortName": "quadSetTopologyContainer", + "templateName": "", + "typeName": "QuadSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to a quad topology.\n" + }, + { + "className": "QuadSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "QuadSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetTopologyModifier" + ], + "shortName": "quadSetTopologyModifier", + "templateName": "", + "typeName": "QuadSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to a quad topology.\n" + }, + { + "className": "QuadularBendingSprings", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "QuadularBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "quadularBendingSprings", + "templateName": "Vec3d", + "typeName": "QuadularBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "100000", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a quad mesh to prevent bending.\n" + }, + { + "className": "QuatToRigidEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "QuatToRigidEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "quatToRigidEngine", + "templateName": "Vec3d", + "typeName": "QuatToRigidEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Positions (Vector of 3)", + "name": "positions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Orientations (Quaternion)", + "name": "orientations", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Optional positions to restrict output to be colinear in the quaternion Z direction", + "name": "colinearPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Rigid (Position + Orientation)", + "name": "rigids", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Transform a vector of Rigids into two independent vectors for positions (Vec3) and orientations (Quat).\n" + }, + { + "className": "ROIValueMapper", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "ROIValueMapper", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "rOIValueMapper", + "templateName": "", + "typeName": "ROIValueMapper" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "size of indices/value vector", + "name": "nbROIs", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "New vector of values", + "name": "outputValues", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Default value for indices out of ROIs", + "name": "defaultValue", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Generate a list of values from value-indices pairs.\n" + }, + { + "className": "RandomPointDistributionInSurface", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "RandomPointDistributionInSurface", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "randomPointDistributionInSurface", + "templateName": "Vec3d", + "typeName": "RandomPointDistributionInSurface,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set a specified seed for random generation (0 for \"true pseudo-randomness\" ", + "name": "randomSeed", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "is Visible ?", + "name": "isVisible", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Output points visible ?", + "name": "drawOutputPoints", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "Min Distance between 2 points (-1 for true randomness)", + "name": "minDistanceBetweenPoints", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Number of points inside", + "name": "numberOfInPoints", + "type": "I" + }, + { + "defaultValue": "5", + "group": "", + "help": "Number of tests to find if the point is inside or not (odd number)", + "name": "numberOfTests", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Vertices", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangles indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points inside the surface", + "name": "inPoints", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points outside the surface", + "name": "outPoints", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine distributing points over a surface randomly.\n" + }, + { + "className": "RayCollisionModel", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "RayCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "rayCollisionModel", + "templateName": "", + "typeName": "RayCollisionModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "1", + "group": "", + "help": "The default length for all rays in this collision model", + "name": "defaultLength", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model representing a ray in space, e.g. a mouse click\n" + }, + { + "className": "RayTraceDetection", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "RayTraceDetection", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "BaseObject" + ], + "shortName": "rayTraceDetection", + "templateName": "", + "typeName": "RayTraceDetection" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Collision detection using TriangleOctreeModel.\n" + }, + { + "className": "RayTraceNarrowPhase", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "RayTraceNarrowPhase", + "namespaceName": "sofa::component::collision::detection::algorithm", + "parents": [ + "NarrowPhaseDetection" + ], + "shortName": "rayTraceNarrowPhase", + "templateName": "", + "typeName": "RayTraceNarrowPhase" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Detection.Algorithm" + } + }, + "description": "Narrow phase of the collision detection using TriangleOctreeModel\n" + }, + { + "className": "ReadState", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "ReadState", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "readState", + "templateName": "", + "typeName": "ReadState" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between inputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Transformation", + "help": "scale the input mechanical object", + "name": "scalePos", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "rotate the input mechanical object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "translate the input mechanical object", + "name": "translation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Read State vectors from file at each timestep.\n" + }, + { + "className": "ReadTopology", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "ReadTopology", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "readTopology", + "templateName": "", + "typeName": "ReadTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "input file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between inputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Read topology containers information from file at each timestep.\n" + }, + { + "className": "RecordedCamera", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "RecordedCamera", + "namespaceName": "sofa::component::visual", + "parents": [ + "BaseCamera" + ], + "shortName": "recordedCamera", + "templateName": "", + "typeName": "RecordedCamera" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's position", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's orientation", + "name": "orientation", + "type": "Quatd" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera's look at", + "name": "lookAt", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Distance between camera and look at", + "name": "distance", + "type": "d" + }, + { + "defaultValue": "45", + "group": "", + "help": "Camera's FOV", + "name": "fieldOfView", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Camera's zNear", + "name": "zNear", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Camera's zFar", + "name": "zFar", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute Z clip planes (Near and Far) according to the bounding box", + "name": "computeZClip", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "minBBox", + "name": "minBBox", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "maxBBox", + "name": "maxBBox", + "type": "Vec3d" + }, + { + "defaultValue": "800", + "group": "", + "help": "widthViewport", + "name": "widthViewport", + "type": "I" + }, + { + "defaultValue": "600", + "group": "", + "help": "heightViewport", + "name": "heightViewport", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Camera Type (0 = Perspective, 1 = Orthographic)", + "name": "projectionType", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "", + "help": "Camera activated ?", + "name": "activated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep the lookAt point always fixed", + "name": "fixedLookAt", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "250", + "group": "", + "help": "Zoom Speed", + "name": "zoomSpeed", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "Pan Speed", + "name": "panSpeed", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pivot (0 => Scene center, 1 => World Center", + "name": "pivot", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Time when the camera moves will start", + "name": "startTime", + "type": "d" + }, + { + "defaultValue": "200", + "group": "", + "help": "Time when the camera moves will end (or loop)", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, rotation will be performed", + "name": "rotationMode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, translation will be performed", + "name": "translationMode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, navigation will be performed", + "name": "navigationMode", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "rotation Speed", + "name": "rotationSpeed", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Rotation center coordinates", + "name": "rotationCenter", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Rotation start position coordinates", + "name": "rotationStartPoint", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Position to be focused during rotation", + "name": "rotationLookAt", + "type": "Vec3d" + }, + { + "defaultValue": "0 1 0", + "group": "", + "help": "Rotation axis", + "name": "rotationAxis", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Camera Up axis", + "name": "cameraUp", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "If true, will draw the rotation path", + "name": "drawRotation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "If true, will draw the translation path", + "name": "drawTranslation", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Intermediate camera's positions", + "name": "cameraPositions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Intermediate camera's orientations", + "name": "cameraOrientations", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "A camera that is moving along a predetermined path.\n" + }, + { + "className": "RegularGridSpringForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RegularGridSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "regularGridSpringFF", + "templateName": "Vec1d", + "typeName": "RegularGridSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Lines Stiffness", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Lines Damping", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Quads Stiffness", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Quads Damping", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Cubes Stiffness", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Cubes Damping", + "name": "cubesDamping", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RegularGridSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "regularGridSpringFF", + "templateName": "Vec2d", + "typeName": "RegularGridSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Lines Stiffness", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Lines Damping", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Quads Stiffness", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Quads Damping", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Cubes Stiffness", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Cubes Damping", + "name": "cubesDamping", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RegularGridSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "regularGridSpringFF", + "templateName": "Vec3d", + "typeName": "RegularGridSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Lines Stiffness", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Lines Damping", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Quads Stiffness", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Quads Damping", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Cubes Stiffness", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Cubes Damping", + "name": "cubesDamping", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RegularGridSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<6u,double>,double>>" + ], + "shortName": "regularGridSpringFF", + "templateName": "Vec6d", + "typeName": "RegularGridSpringForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Lines Stiffness", + "name": "linesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Lines Damping", + "name": "linesDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Quads Stiffness", + "name": "quadsStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Quads Damping", + "name": "quadsDamping", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "Cubes Stiffness", + "name": "cubesStiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Cubes Damping", + "name": "cubesDamping", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Spring acting on the edges and faces of a regular grid.\n" + }, + { + "className": "RegularGridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "RegularGridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "GridTopology" + ], + "shortName": "regularGridTopology", + "templateName": "", + "typeName": "RegularGridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution. (default = 2 2 2)", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Hexahedra is needed during init (default=true)", + "name": "computeHexaList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Quad is needed during init (default=true)", + "name": "computeQuadList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Triangles is needed during init (default=true)", + "name": "computeTriangleList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Lines is needed during init (default=true)", + "name": "computeEdgeList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Points is needed during init (default=true)", + "name": "computePointList", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, virtual texture coordinates will be generated using 3D interpolation (default=false).", + "name": "createTexCoords", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min end of the diagonal", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Max end of the diagonal", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Offset all the grid points", + "name": "p0", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if > 0 : dimension of each cell in the created grid. Otherwise, the cell size is computed based on min, max, and resolution n.", + "name": "cellWidth", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Regular grid in 3D.\n" + }, + { + "className": "RepulsiveSpringForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RepulsiveSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<1u,double>,double>>" + ], + "shortName": "repulsiveSpringFF", + "templateName": "Vec1d", + "typeName": "RepulsiveSpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RepulsiveSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "repulsiveSpringFF", + "templateName": "Vec2d", + "typeName": "RepulsiveSpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "RepulsiveSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "repulsiveSpringFF", + "templateName": "Vec3d", + "typeName": "RepulsiveSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs which only repel.\n" + }, + { + "className": "RequiredPlugin", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "RequiredPlugin", + "namespaceName": "sofa::simulation", + "parents": [ + "BaseObject" + ], + "shortName": "requiredPlugin", + "templateName": "", + "typeName": "RequiredPlugin" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "plugin name (or several names if you need to load different plugins or a plugin with several alternate names)", + "name": "pluginName", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "standard->custom suffixes pairs (to be used if the plugin is compiled outside of Sofa with a non standard way of differentiating versions), using ! to represent empty suffix", + "name": "suffixMap", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Stop after the first plugin name that is loaded successfully", + "name": "stopAfterFirstNameFound", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "For each plugin name, stop after the first suffix that is loaded successfully", + "name": "stopAfterFirstSuffixFound", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Display an error message if no plugin names were successfully loaded", + "name": "requireOne", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display an error message if any plugin names failed to be loaded", + "name": "requireAll", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of the plugins that are have been loaded.", + "name": "loadedPlugins", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Simulation.Core" + } + }, + "description": "Load the SOFA modules and/or plugins required to run a simulation.\n" + }, + { + "className": "RestShapeSpringsForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "RestShapeSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField>" + ], + "shortName": "restShapeSpringsFF", + "templateName": "Rigid3d", + "typeName": "RestShapeSpringsForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points controlled by the rest shape springs", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "stiffness values between the actual position and the rest shape position", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angularStiffness assigned when controlling the rotation of the points", + "name": "angularStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "global pivot points used when translations instead of the rigid mass centers", + "name": "pivot_points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points from the external Mechanical State that define the rest shape springs", + "name": "external_points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color. (default=[0.0,1.0,0.0,1.0])", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "1 1 1 1 1 1 1", + "group": "", + "help": "Directions in which the spring is active (default=[1,1,1,1,1,1,1])", + "name": "activeDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "MechanicalState", + "help": "rest_shape can be defined by the position of an external Mechanical State", + "name": "external_rest_shape" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to be set to the topology container in the component graph", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "RestShapeSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "restShapeSpringsFF", + "templateName": "Vec1d", + "typeName": "RestShapeSpringsForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points controlled by the rest shape springs", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "stiffness values between the actual position and the rest shape position", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angularStiffness assigned when controlling the rotation of the points", + "name": "angularStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "global pivot points used when translations instead of the rigid mass centers", + "name": "pivot_points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points from the external Mechanical State that define the rest shape springs", + "name": "external_points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color. (default=[0.0,1.0,0.0,1.0])", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Directions in which the spring is active (default=[1])", + "name": "activeDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "MechanicalState", + "help": "rest_shape can be defined by the position of an external Mechanical State", + "name": "external_rest_shape" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to be set to the topology container in the component graph", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "RestShapeSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "restShapeSpringsFF", + "templateName": "Vec3d", + "typeName": "RestShapeSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "points controlled by the rest shape springs", + "name": "points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "stiffness values between the actual position and the rest shape position", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "angularStiffness assigned when controlling the rotation of the points", + "name": "angularStiffness", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "global pivot points used when translations instead of the rigid mass centers", + "name": "pivot_points", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "points from the external Mechanical State that define the rest shape springs", + "name": "external_points", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Recompute indices (should be false for BBOX)", + "name": "recompute_indices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw Spring", + "name": "drawSpring", + "type": "bool" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "spring color. (default=[0.0,1.0,0.0,1.0])", + "name": "springColor", + "type": "RGBAColor" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Directions in which the spring is active (default=[1,1,1])", + "name": "activeDirections", + "type": "fixed_array" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "MechanicalState", + "help": "rest_shape can be defined by the position of an external Mechanical State", + "name": "external_rest_shape" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Link to be set to the topology container in the component graph", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Elastic springs generating forces on degrees of freedom between their current and rest shape position.\n" + }, + { + "className": "RigidMapping", + "creator": { + "Rigid2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "RigidMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "Mapping,StdVectorTypes,Vec<2u,double>,double>>" + ], + "shortName": "rigidMap", + "templateName": "Rigid2d,Vec2d", + "typeName": "RigidMapping,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Local Coordinates of the points", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index", + "name": "index", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp file where rigid mapping information can be loaded from.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use x0 instead of local copy of initial positions (to support topo changes)", + "name": "useX0", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index starts from the end of input DOFs vector", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "For each mapped point, the index of the Rigid it is mapped from", + "name": "rigidIndexPerPoint", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "are the output DOFs initially expressed in global coordinates", + "name": "globalToLocalCoords", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "RigidMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "Mapping,StdRigidTypes<3u,double>>" + ], + "shortName": "rigidMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "RigidMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Local Coordinates of the points", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index", + "name": "index", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp file where rigid mapping information can be loaded from.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use x0 instead of local copy of initial positions (to support topo changes)", + "name": "useX0", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index starts from the end of input DOFs vector", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "For each mapped point, the index of the Rigid it is mapped from", + "name": "rigidIndexPerPoint", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "are the output DOFs initially expressed in global coordinates", + "name": "globalToLocalCoords", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "RigidMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "Mapping,StdVectorTypes,Vec<3u,double>,double>>" + ], + "shortName": "rigidMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "RigidMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "Local Coordinates of the points", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index", + "name": "index", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Xsp file where rigid mapping information can be loaded from.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use x0 instead of local copy of initial positions (to support topo changes)", + "name": "useX0", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "input DOF index starts from the end of input DOFs vector", + "name": "indexFromEnd", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "For each mapped point, the index of the Rigid it is mapped from", + "name": "rigidIndexPerPoint", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "are the output DOFs initially expressed in global coordinates", + "name": "globalToLocalCoords", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Set the positions and velocities of points attached to a rigid parent.\n" + }, + { + "className": "RigidToQuatEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "RigidToQuatEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "rigidToQuatEngine", + "templateName": "Vec3d", + "typeName": "RigidToQuatEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Positions (Vector of 3)", + "name": "positions", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Orientations (Quaternion)", + "name": "orientations", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Orientations (Euler angle)", + "name": "orientationsEuler", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rigid (Position + Orientation)", + "name": "rigids", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Transform a couple of Vec3 and Quaternion in Rigid.\n" + }, + { + "className": "RotateTransformMatrixEngine", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "RotateTransformMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "AbstractTransformMatrixEngine" + ], + "shortName": "rotateTransformMatrixEngine", + "templateName": "", + "typeName": "RotateTransformMatrixEngine" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "input transformation if any", + "name": "inT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output transformation", + "name": "outT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "", + "help": "euler angles", + "name": "rotation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Compose the input transform (if any) with the given rotation.\n" + }, + { + "className": "RotationMatrixSystem", + "creator": { + "RotationMatrixd": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "RotationMatrixSystem", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "TypedMatrixLinearSystem,FullVector>" + ], + "shortName": "rotationMatrixSystem", + "templateName": "RotationMatrixd", + "typeName": "RotationMatrixSystem,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Rate of update of the preconditioner matrix", + "name": "assemblingRate", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMatrixLinearSystem", + "help": "Main assembled linear system that will be warped", + "name": "mainSystem" + }, + { + "destinationTypeName": "BaseRotationFinder", + "help": "Link toward the rotation finder used to compute the rotation matrix", + "name": "rotationFinder" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Rotation matrix warping the main linear system.\n" + }, + { + "className": "RuleBasedContactManager", + "creator": { + "": { + "class": { + "categories": [ + "CollisionAlgorithm" + ], + "className": "RuleBasedContactManager", + "namespaceName": "sofa::component::collision::response::contact", + "parents": [ + "CollisionResponse" + ], + "shortName": "ruleBasedContactManager", + "templateName": "", + "typeName": "RuleBasedContactManager" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "contact response class", + "name": "response", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "contact response parameters (syntax: name1=value1&name2=value2&...)", + "name": "responseParams", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Define a list of variables to be used inside the rules", + "name": "variables", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Ordered list of rules, each with a triplet of strings.\nThe first two define either the name of the collision model, its group number, or * meaning any model.\nThe last string define the response algorithm to use for contacts matched by this rule.\nRules are applied in the order they are specified. If none match a given contact, the default response is used.\n", + "name": "rules", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Collision.Response.Contact" + } + }, + "description": "Create different response to the collisions based on a set of rules.\n" + }, + { + "className": "RungeKutta2Solver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "RungeKutta2Solver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "rungeKutta2Solver", + "templateName": "", + "typeName": "RungeKutta2Solver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "A popular explicit time integrator.\n" + }, + { + "className": "RungeKutta4Solver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "RungeKutta4Solver", + "namespaceName": "sofa::component::odesolver::forward", + "parents": [ + "OdeSolver" + ], + "shortName": "rungeKutta4Solver", + "templateName": "", + "typeName": "RungeKutta4Solver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.ODESolver.Forward" + } + }, + "description": "A popular explicit time integrator.\n" + }, + { + "className": "SSORPreconditioner", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SSORPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "sSORPreconditioner", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "SSORPreconditioner,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Omega coefficient", + "name": "omega", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SSORPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "sSORPreconditioner", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "SSORPreconditioner,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Omega coefficient", + "name": "omega", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear system solver / preconditioner based on Symmetric Successive Over-Relaxation (SSOR). If the matrix is decomposed as $A = D + L + L^T$, this solver computes $(1/(2-w))(D/w+L)(D/w)^{-1}(D/w+L)^T x = b, or $(D+L)D^{-1}(D+L)^T x = b$ if $w=1$.\n" + }, + { + "className": "STLExporter", + "creator": { + "": { + "class": { + "categories": [ + "Exporter" + ], + "className": "STLExporter", + "namespaceName": "sofa::component::_stlexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "sTLExporter", + "templateName": "", + "typeName": "STLExporter" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "if true, save in binary format, otherwise in ascii", + "name": "binaryformat", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "points coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "triangles indices", + "name": "triangle", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "quads indices", + "name": "quad", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Save a topology in file.\n" + }, + { + "className": "SVDLinearSolver", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SVDLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "sVDLinearSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "SVDLinearSolver,CRSMechanicalPolicy>,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump system state at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1e-06", + "group": "", + "help": "Thershold under which a singular value is set to 0, for the stabilization of ill-conditioned system.", + "name": "minSingularValue", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Condition number of the matrix: ratio between the largest and smallest singular values. Computed in method solve.", + "name": "conditionNumber", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SVDLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "sVDLinearSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "SVDLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump system state at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1e-06", + "group": "", + "help": "Thershold under which a singular value is set to 0, for the stabilization of ill-conditioned system.", + "name": "minSingularValue", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Condition number of the matrix: ratio between the largest and smallest singular values. Computed in method solve.", + "name": "conditionNumber", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "FullMatrix": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SVDLinearSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "sVDLinearSolver", + "templateName": "FullMatrix", + "typeName": "SVDLinearSolver,FullVector>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump system state at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1e-06", + "group": "", + "help": "Thershold under which a singular value is set to 0, for the stabilization of ill-conditioned system.", + "name": "minSingularValue", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Condition number of the matrix: ratio between the largest and smallest singular values. Computed in method solve.", + "name": "conditionNumber", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Linear system solver using a SVD decomposition of a dense matrix.\n" + }, + { + "className": "ScaleTransformMatrixEngine", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "ScaleTransformMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "AbstractTransformMatrixEngine" + ], + "shortName": "scaleTransformMatrixEngine", + "templateName": "", + "typeName": "ScaleTransformMatrixEngine" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "input transformation if any", + "name": "inT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output transformation", + "name": "outT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "", + "help": "scaling values", + "name": "scale", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Compose the input transform (if any) with the given scale transformation.\n" + }, + { + "className": "SelectConnectedLabelsROI", + "creator": { + "B": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectConnectedLabelsROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectConnectedLabelsROI", + "templateName": "B", + "typeName": "SelectConnectedLabelsROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of label lists", + "name": "nbLabels", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Pairs of label to be connected across different label lists", + "name": "connectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "H": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectConnectedLabelsROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectConnectedLabelsROI", + "templateName": "H", + "typeName": "SelectConnectedLabelsROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of label lists", + "name": "nbLabels", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Pairs of label to be connected across different label lists", + "name": "connectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectConnectedLabelsROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectConnectedLabelsROI", + "templateName": "I", + "typeName": "SelectConnectedLabelsROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of label lists", + "name": "nbLabels", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Pairs of label to be connected across different label lists", + "name": "connectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectConnectedLabelsROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectConnectedLabelsROI", + "templateName": "i", + "typeName": "SelectConnectedLabelsROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "number of label lists", + "name": "nbLabels", + "type": "I" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Pairs of label to be connected across different label lists", + "name": "connectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Select a subset of points or cells labeled from different sources, that are connected given a list of connection pairs.\n" + }, + { + "className": "SelectLabelROI", + "creator": { + "B": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectLabelROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectLabelROI", + "templateName": "B", + "typeName": "SelectLabelROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "lists of labels associated to each point/cell", + "name": "labels", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "list of selected labels", + "name": "selectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "H": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectLabelROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectLabelROI", + "templateName": "H", + "typeName": "SelectLabelROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "lists of labels associated to each point/cell", + "name": "labels", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "list of selected labels", + "name": "selectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectLabelROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectLabelROI", + "templateName": "I", + "typeName": "SelectLabelROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "lists of labels associated to each point/cell", + "name": "labels", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "list of selected labels", + "name": "selectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "SelectLabelROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "selectLabelROI", + "templateName": "i", + "typeName": "SelectLabelROI" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "lists of labels associated to each point/cell", + "name": "labels", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "list of selected labels", + "name": "selectLabels", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "selected point/cell indices", + "name": "indices", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Select a subset of labeled points or cells stored in (vector>) given certain labels.\n" + }, + { + "className": "ShapeMatching", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ShapeMatching", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "shapeMatching", + "templateName": "Rigid3d", + "typeName": "ShapeMatching>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of iterations.", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Blending between affine and rigid.", + "name": "affineRatio", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "weight of fixed particles.", + "name": "fixedweight", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "rest positions of non mechanical particles.", + "name": "fixedPosition0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "current (fixed) positions of non mechanical particles.", + "name": "fixedPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input clusters.", + "name": "cluster", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed target positions.", + "name": "targetPosition", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ShapeMatching", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "shapeMatching", + "templateName": "Vec3d", + "typeName": "ShapeMatching,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of iterations.", + "name": "iterations", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Blending between affine and rigid.", + "name": "affineRatio", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "weight of fixed particles.", + "name": "fixedweight", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "rest positions of non mechanical particles.", + "name": "fixedPosition0", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "current (fixed) positions of non mechanical particles.", + "name": "fixedPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input positions.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input clusters.", + "name": "cluster", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Computed target positions.", + "name": "targetPosition", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Compute target positions using shape matching deformation method by Mueller et al.\n" + }, + { + "className": "SimpleTesselatedHexaTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "SimpleTesselatedHexaTopologicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "TopologicalMapping" + ], + "shortName": "simpleTesselatedHexaTopologicalMapping", + "templateName": "", + "typeName": "SimpleTesselatedHexaTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Special case of mapping where HexahedronSetTopology is converted into a finer HexahedronSetTopology.\n" + }, + { + "className": "SimpleTesselatedTetraMechanicalMapping", + "creator": { + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SimpleTesselatedTetraMechanicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "simpleTesselatedTetraMechanicalMap", + "templateName": "Vec3d,Vec3d", + "typeName": "SimpleTesselatedTetraMechanicalMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Mechanical mapping between two TetrahedronSetTopologies generated by SimpleTesselatedTetraTopologicalMapping.\n" + }, + { + "className": "SimpleTesselatedTetraTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "SimpleTesselatedTetraTopologicalMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "TopologicalMapping" + ], + "shortName": "simpleTesselatedTetraTopologicalMapping", + "templateName": "", + "typeName": "SimpleTesselatedTetraTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Each Tetrahedron of the input topology is mapped to the 8 tetrahedrons in which it can be divided", + "name": "tetrahedraMappedFromTetra", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Which tetra from the input topology map to a given tetra in the output topology (sofa::InvalidID if none)", + "name": "tetraSource", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Each point of the input topology is mapped to the same point", + "name": "pointMappedFromPoint", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Each edge of the input topology is mapped to his midpoint", + "name": "pointMappedFromEdge", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Which input topology element map to a given point in the output topology : 0 -> none, > 0 -> point index + 1, < 0 , - edge index -1", + "name": "pointSource", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Special case of mapping where TetrahedronSetTopology is converted into a finer TetrahedronSetTopology.\n" + }, + { + "className": "SkeletalMotionProjectiveConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ProjectiveConstraintSet" + ], + "className": "SkeletalMotionProjectiveConstraint", + "namespaceName": "sofa::component::constraint::projective", + "parents": [ + "ProjectiveConstraintSet>" + ], + "shortName": "skeletalMotionProjectiveConstraint", + "templateName": "Rigid3d", + "typeName": "SkeletalMotionProjectiveConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "skeleton joints", + "name": "joints", + "type": "SVector>>" + }, + { + "defaultValue": "", + "group": "", + "help": "skeleton bones", + "name": "bones", + "type": "SVector" + }, + { + "defaultValue": "1", + "group": "", + "help": "animation speed", + "name": "animationSpeed", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "is the constraint active?", + "name": "active", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Projective" + } + }, + "description": "Animate a skeleton.\n" + }, + { + "className": "SkinningMapping", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SkinningMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "skinningMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "SkinningMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "initial child coordinates in the world reference frame.", + "name": "initPos", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Number of primitives influencing each point.", + "name": "nbRef", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "parent indices for each child.", + "name": "indices", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "influence weights of the Dofs.", + "name": "weight", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Displayed From Index.", + "name": "showFromIndex", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show influence.", + "name": "showWeights", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Skin a model from a set of rigid DOFs.\n" + }, + { + "className": "SlicedVolumetricModel", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "SlicedVolumetricModel", + "namespaceName": "sofa::gl::component::rendering3d", + "parents": [ + "VisualModel" + ], + "shortName": "slicedVolumetricModel", + "templateName": "", + "typeName": "SlicedVolumetricModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "0.2", + "group": "", + "help": "Opacity of the billboards. 1.0 is 100% opaque.", + "name": "alpha", + "type": "f" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Billboard color.(default=1.0,1.0,1.0,1.0)", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "100", + "group": "", + "help": "Number of billboards.", + "name": "nbSlices", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Rendering3D" + } + }, + "description": "Sliced visualization for a volumetric model defined with hexahedra.\n" + }, + { + "className": "SlidingLagrangianConstraint", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "SlidingLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "PairInteractionConstraint>" + ], + "shortName": "slidingLagrangianConstraint", + "templateName": "Rigid3d", + "typeName": "SlidingLagrangianConstraint>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the spliding point on the first model", + "name": "sliding_point", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of one end of the sliding axis", + "name": "axis_1", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the other end of the sliding axis", + "name": "axis_2", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "force (impulse) used to solve the constraint", + "name": "force", + "type": "RigidDeriv3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "SlidingLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "PairInteractionConstraint,Vec<3u,double>,double>>" + ], + "shortName": "slidingLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "SlidingLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the spliding point on the first model", + "name": "sliding_point", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of one end of the sliding axis", + "name": "axis_1", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the other end of the sliding axis", + "name": "axis_2", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "force (impulse) used to solve the constraint", + "name": "force", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "Lagrangian-based partial fixation of DOFs of the model, along an axis.\n" + }, + { + "className": "SmoothMeshEngine", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SmoothMeshEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "smoothMeshEngine", + "templateName": "Vec3d", + "typeName": "SmoothMeshEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input position", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Position indices that need to be smoothed, leave empty for all positions", + "name": "input_indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output position", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Number of iterations of laplacian smoothing", + "name": "nb_iterations", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "showInput", + "name": "showInput", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "showOutput", + "name": "showOutput", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Compute the laplacian smoothing of a mesh.\n" + }, + { + "className": "SofaDefaultPathSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "SofaDefaultPathSetting", + "namespaceName": "sofa::component::setting", + "parents": [ + "ConfigurationSetting" + ], + "shortName": "sofaDefaultPathSetting", + "templateName": "", + "typeName": "SofaDefaultPathSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path where will be saved the gnuplot files", + "name": "gnuplotPath", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Setting" + } + }, + "description": "Default Paths for Sofa Application.\n" + }, + { + "className": "SparseGridMultipleTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SparseGridMultipleTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "SparseGridRamificationTopology" + ], + "shortName": "sparseGridMultipleTopology", + "templateName": "", + "typeName": "SparseGridMultipleTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Is quantity of matter inside a cell taken into account? (.5 for boundary, 1 for inside)", + "name": "fillWeighted", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Select only inside cells (exclude boundary cells)", + "name": "onlyInsideCells", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if > 0 : dimension of each cell in the created grid", + "name": "cellWidth", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "create virtual (not in the animation tree) finer sparse grids in order to dispose of finest information (useful to compute better mechanical properties for example)", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Dimension of the voxel File", + "name": "dataResolution", + "type": "Vec3i" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Dimension of one voxel", + "name": "voxelSize", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Step of the Marching Cube algorithm", + "name": "marchingCubeStep", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dimension of the convolution kernel to smooth the voxels. 0 if no smoothing is required.", + "name": "convolutionSize", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Input mesh facets", + "name": "facets", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Test for connectivity at the finest level? (more precise but slower by testing all intersections between the model mesh and the faces between boundary cubes)", + "name": "finestConnectivity", + "type": "bool" + }, + { + "defaultValue": "[]", + "group": "", + "help": "All topology filenames", + "name": "fileTopologies", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "A stiffness coefficient for each topology filename", + "name": "stiffnessCoefs", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "A mass coefficient for each topology filename", + "name": "massCoefs", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are ramifications wanted?", + "name": "computeRamifications", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Does a new stiffness/mass coefficient replace the previous or blend half/half with it?", + "name": "erasePreviousCoef", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Sparse grid in 3D.\n" + }, + { + "className": "SparseGridRamificationTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SparseGridRamificationTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "SparseGridTopology" + ], + "shortName": "sparseGridRamificationTopology", + "templateName": "", + "typeName": "SparseGridRamificationTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Is quantity of matter inside a cell taken into account? (.5 for boundary, 1 for inside)", + "name": "fillWeighted", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Select only inside cells (exclude boundary cells)", + "name": "onlyInsideCells", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if > 0 : dimension of each cell in the created grid", + "name": "cellWidth", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "create virtual (not in the animation tree) finer sparse grids in order to dispose of finest information (useful to compute better mechanical properties for example)", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Dimension of the voxel File", + "name": "dataResolution", + "type": "Vec3i" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Dimension of one voxel", + "name": "voxelSize", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Step of the Marching Cube algorithm", + "name": "marchingCubeStep", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dimension of the convolution kernel to smooth the voxels. 0 if no smoothing is required.", + "name": "convolutionSize", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Input mesh facets", + "name": "facets", + "type": "vector>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Test for connectivity at the finest level? (more precise but slower by testing all intersections between the model mesh and the faces between boundary cubes)", + "name": "finestConnectivity", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Sparse grid in 3D (modified).\n" + }, + { + "className": "SparseGridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SparseGridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "MeshTopology" + ], + "shortName": "sparseGridTopology", + "templateName": "", + "typeName": "SparseGridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Is quantity of matter inside a cell taken into account? (.5 for boundary, 1 for inside)", + "name": "fillWeighted", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Select only inside cells (exclude boundary cells)", + "name": "onlyInsideCells", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if > 0 : dimension of each cell in the created grid", + "name": "cellWidth", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "create virtual (not in the animation tree) finer sparse grids in order to dispose of finest information (useful to compute better mechanical properties for example)", + "name": "nbVirtualFinerLevels", + "type": "i" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Dimension of the voxel File", + "name": "dataResolution", + "type": "Vec3i" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Dimension of one voxel", + "name": "voxelSize", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Step of the Marching Cube algorithm", + "name": "marchingCubeStep", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dimension of the convolution kernel to smooth the voxels. 0 if no smoothing is required.", + "name": "convolutionSize", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Input mesh facets", + "name": "facets", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Sparse grid in 3D.\n" + }, + { + "className": "SparseLDLSolver", + "creator": { + "CompressedRowSparseMatrixMat3x3d": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SparseLDLSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "SparseLDLSolverImpl,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + ], + "shortName": "sparseLDLSolver", + "templateName": "CompressedRowSparseMatrixMat3x3d", + "typeName": "SparseLDLSolver,CRSMechanicalPolicy>,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the solver will reuse the precomputed symbolic decomposition, meaning that it will store the shape of [factor matrix] on the first step, or when its shape changes, and then it will only update its coefficients. When the shape of the matrix changes, a new factorization is computed.If false, the solver will compute the entire decomposition at each step", + "name": "precomputeSymbolicDecomposition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of non-zero values in the lower triangular matrix of the factorization. The lower, the faster the system is solved.", + "name": "L_nnz", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + }, + "CompressedRowSparseMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "SparseLDLSolver", + "namespaceName": "sofa::component::linearsolver::direct", + "parents": [ + "SparseLDLSolverImpl,FullVector,NoThreadManager>" + ], + "shortName": "sparseLDLSolver", + "templateName": "CompressedRowSparseMatrixd", + "typeName": "SparseLDLSolver,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, the solver will reuse the precomputed symbolic decomposition, meaning that it will store the shape of [factor matrix] on the first step, or when its shape changes, and then it will only update its coefficients. When the shape of the matrix changes, a new factorization is computed.If false, the solver will compute the entire decomposition at each step", + "name": "precomputeSymbolicDecomposition", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of non-zero values in the lower triangular matrix of the factorization. The lower, the faster the system is solved.", + "name": "L_nnz", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "BaseOrderingMethod", + "help": "Ordering method used by this component", + "name": "orderingMethod" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Direct linear solver using a Sparse LDL^T factorization.\n" + }, + { + "className": "SphereCollisionModel", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "SphereCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "sphereCollisionModel", + "templateName": "Rigid3d", + "typeName": "SphereCollisionModel>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of each sphere", + "name": "listRadius", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Draw spheres as impostors instead of \"real\" spheres", + "name": "showImpostors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + }, + "Vec3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "SphereCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "sphereCollisionModel", + "templateName": "Vec3d", + "typeName": "SphereCollisionModel,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of each sphere", + "name": "listRadius", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Draw spheres as impostors instead of \"real\" spheres", + "name": "showImpostors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model which represents a set of Spheres.\n" + }, + { + "className": "SphereForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SphereForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "sphereFF", + "templateName": "Vec1d", + "typeName": "SphereForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Contacts", + "name": "contacts", + "type": "vector,Vec<1u,double>,double>>Contact,CPUMemoryManager,Vec<1u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "sphere center", + "name": "center", + "type": "Vec1d" + }, + { + "defaultValue": "1", + "group": "", + "help": "sphere radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0 1 1", + "group": "", + "help": "sphere color. (default=[0,0,1,1])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the sphere force field is applied on both sides", + "name": "bilateral", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SphereForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "sphereFF", + "templateName": "Vec2d", + "typeName": "SphereForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Contacts", + "name": "contacts", + "type": "vector,Vec<2u,double>,double>>Contact,CPUMemoryManager,Vec<2u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "sphere center", + "name": "center", + "type": "Vec2d" + }, + { + "defaultValue": "1", + "group": "", + "help": "sphere radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0 1 1", + "group": "", + "help": "sphere color. (default=[0,0,1,1])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the sphere force field is applied on both sides", + "name": "bilateral", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SphereForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "sphereFF", + "templateName": "Vec3d", + "typeName": "SphereForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Contacts", + "name": "contacts", + "type": "vector,Vec<3u,double>,double>>Contact,CPUMemoryManager,Vec<3u,double>,double>>Contact>>" + }, + { + "defaultValue": "", + "group": "", + "help": "sphere center", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "sphere radius", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "500", + "group": "", + "help": "force stiffness", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "force damping", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "0 0 1 1", + "group": "", + "help": "sphere color. (default=[0,0,1,1])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. Any computation involving only indices outside of this range are discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true the sphere force field is applied on both sides", + "name": "bilateral", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Outward repulsion applied by a sphere geometry\n" + }, + { + "className": "SphereGridTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SphereGridTopology", + "namespaceName": "sofa::component::topology::container::grid", + "parents": [ + "GridTopology" + ], + "shortName": "sphereGridTopology", + "templateName": "", + "typeName": "SphereGridTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "2 2 2", + "group": "", + "help": "grid resolution. (default = 2 2 2)", + "name": "n", + "type": "Vec3i" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Hexahedra is needed during init (default=true)", + "name": "computeHexaList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Quad is needed during init (default=true)", + "name": "computeQuadList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Triangles is needed during init (default=true)", + "name": "computeTriangleList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Lines is needed during init (default=true)", + "name": "computeEdgeList", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "put true if the list of Points is needed during init (default=true)", + "name": "computePointList", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If set to true, virtual texture coordinates will be generated using 3D interpolation (default=false).", + "name": "createTexCoords", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Center of the cylinder", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 1", + "group": "", + "help": "Main direction of the cylinder", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Radius of the cylinder", + "name": "radius", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Grid" + } + }, + "description": "Sphere grid in 3D.\n" + }, + { + "className": "SphereLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "SphereLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "BaseLoader" + ], + "shortName": "sphereLoader", + "templateName": "", + "typeName": "SphereLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Sphere centers", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of each sphere", + "name": "listRadius", + "type": "vector" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale applied to sphere positions & radius", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation applied to sphere positions", + "name": "translation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Loader for sphere model description files.\n" + }, + { + "className": "SphereQuadTopology", + "creator": { + "": { + "class": { + "categories": [ + "Topology" + ], + "className": "SphereQuadTopology", + "namespaceName": "sofa::component::topology::container::constant", + "parents": [ + "CubeTopology" + ], + "shortName": "sphereQuadTopology", + "templateName": "", + "typeName": "SphereQuadTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point positions", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad indices", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron indices", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of prisms indices", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of pyramids indices", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of uv coordinates", + "name": "uv", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Option to compute all crossed topology buffers at init. False by default", + "name": "computeAllBuffers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Triangles", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Quads", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the topology hexahedra", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "x grid resolution", + "name": "nx", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "y grid resolution", + "name": "ny", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "z grid resolution", + "name": "nz", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "include internal points (allow a one-to-one mapping between points from RegularGridTopology and CubeTopology)", + "name": "internalPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "split corner points to have planar normals", + "name": "splitNormals", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Min", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Max", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Center of the sphere", + "name": "center", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Radius of the sphere", + "name": "radius", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Constant" + } + }, + "description": "Sphere topology constructed with deformed quads.\n" + }, + { + "className": "SphereROI", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SphereROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI>" + ], + "shortName": "sphereROI", + "templateName": "Rigid3d", + "typeName": "SphereROI>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge direction(if edgeAngle > 0)", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction of the triangles (if triAngle > 0)", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the direction of the selected edges and the specified direction", + "name": "edgeAngle", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the normal of the selected triangle and the specified normal direction", + "name": "triAngle", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SphereROI", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "BaseROI,Vec<3u,double>,double>>" + ], + "shortName": "sphereROI", + "templateName": "Vec3d", + "typeName": "SphereROI,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom. \nIf empty the positions from a MechanicalObject then a MeshLoader are searched in the current context. \nIf none are found the parent's context is searched for MechanicalObject.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute edge list and index list inside the ROI.", + "name": "computeEdges", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute triangle list and index list inside the ROI.", + "name": "computeTriangles", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute quad list and index list inside the ROI.", + "name": "computeQuads", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute tetrahedra list and index list inside the ROI.", + "name": "computeTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, will compute hexahedra list and index list inside the ROI.", + "name": "computeHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, an element is inside the box if all of its nodes are inside. If False, only the center point of the element is checked.", + "name": "strict", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the quad contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Quad contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Number of selected indices", + "name": "nbIndices", + "type": "I" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Points not contained in the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Edges not contained in the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Triangles not contained in the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Tetrahedra not contained in the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the points not contained in the ROI", + "name": "indicesOut", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the edges not contained in the ROI", + "name": "edgeOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the triangles not contained in the ROI", + "name": "triangleOutIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Indices of the tetrahedra not contained in the ROI", + "name": "tetrahedronOutIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw the ROI.", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points.", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles.", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Quads.", + "name": "drawQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra.", + "name": "drawHexahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for ROI and topological elements", + "name": "drawSize", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "If true, updates the selection at the beginning of simulation steps.", + "name": "doUpdate", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge direction(if edgeAngle > 0)", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction of the triangles (if triAngle > 0)", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the direction of the selected edges and the specified direction", + "name": "edgeAngle", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the normal of the selected triangle and the specified normal direction", + "name": "triAngle", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine selecting the primitives (vertex/edge/triangle/tetrahedron) inside a given sphere.\n" + }, + { + "className": "Spiral", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "Spiral", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "spiral", + "templateName": "Vec3d", + "typeName": "Spiral,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0.2", + "group": "", + "help": "Spiral curvature factor", + "name": "curvature", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "Engine turning on spiral any topological model.\n" + }, + { + "className": "SpotLight", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "SpotLight", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "PositionalLight" + ], + "shortName": "spotLight", + "templateName": "", + "typeName": "SpotLight" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Set the color of the light. (default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Set size for shadow texture ", + "name": "shadowTextureSize", + "type": "I" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Light Source", + "name": "drawSource", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZNear", + "name": "zNear", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Light's ZFar", + "name": "zFar", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Enable Shadow from this light", + "name": "shadowsEnabled", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "[Shadowing] Turn on Soft Shadow from this light", + "name": "softShadows", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Shadow Factor (decrease/increase darkness)", + "name": "shadowFactor", + "type": "f" + }, + { + "defaultValue": "0.05", + "group": "", + "help": "[Shadowing] (VSM only) Light bleeding parameter", + "name": "VSMLightBleeding", + "type": "f" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "[Shadowing] (VSM only) Minimum variance parameter", + "name": "VSMMinVariance", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "[Shadowing] Texture unit for the generated shadow texture", + "name": "textureUnit", + "type": "H" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] ModelView Matrix", + "name": "modelViewMatrix", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "[Shadowing] Projection Matrix", + "name": "projectionMatrix", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Fix light position from the camera", + "name": "fixed", + "type": "bool" + }, + { + "defaultValue": "-0.7 0.3 0", + "group": "", + "help": "Set the position of the light", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Set the attenuation of the light", + "name": "attenuation", + "type": "f" + }, + { + "defaultValue": "0 0 -1", + "group": "", + "help": "Set the direction of the light", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "30", + "group": "", + "help": "Set the angle (cutoff) of the spot", + "name": "cutoff", + "type": "f" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set the exponent of the spot", + "name": "exponent", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, direction specify the point at which the spotlight should be pointed to", + "name": "lookat", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "A spot light illuminating the scene.The light has a location and a illumination cone restricting the directionstaken by the rays of light (can cast shadows).\n" + }, + { + "className": "SpringForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField>" + ], + "shortName": "springFF", + "templateName": "Rigid3d", + "typeName": "SpringForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<1u,double>,double>>" + ], + "shortName": "springFF", + "templateName": "Vec1d", + "typeName": "SpringForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<2u,double>,double>>" + ], + "shortName": "springFF", + "templateName": "Vec2d", + "typeName": "SpringForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<3u,double>,double>>" + ], + "shortName": "springFF", + "templateName": "Vec3d", + "typeName": "SpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "SpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<6u,double>,double>>" + ], + "shortName": "springFF", + "templateName": "Vec6d", + "typeName": "SpringForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs.\n" + }, + { + "className": "SquareDistanceMapping", + "creator": { + "Rigid3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SquareDistanceMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "squareDistanceMap", + "templateName": "Rigid3d,Vec1d", + "typeName": "SquareDistanceMapping,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + }, + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SquareDistanceMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "squareDistanceMap", + "templateName": "Vec3d,Vec1d", + "typeName": "SquareDistanceMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Scale for object display", + "name": "showObjectScale", + "type": "d" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "Color for object display. (default=[1.0,1.0,0.0,1.0])", + "name": "showColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping point positions to square distances.\n" + }, + { + "className": "SquareMapping", + "creator": { + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SquareMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,false>" + ], + "shortName": "squareMap", + "templateName": "Vec1d,Vec1d", + "typeName": "SquareMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Exact", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed", + "name": "geometricStiffness", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Compute the square value from the inputs.\n" + }, + { + "className": "StandardTetrahedralFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "StandardTetrahedralFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::hyperelastic", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "standardTetrahedralFEMFF", + "templateName": "Vec3d", + "typeName": "StandardTetrahedralFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "ArrudaBoyce", + "group": "", + "help": "the name of the material to be used", + "name": "materialName", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "The global parameters specifying the material", + "name": "ParameterSet", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The global directions of anisotropy of the material", + "name": "AnisotropyDirections", + "type": "vector" + }, + { + "defaultValue": "myFile.param", + "group": "", + "help": "the name of the file describing the material parameters for all tetrahedra", + "name": "ParameterFile", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal tetrahedron data", + "name": "tetrahedronInfo", + "type": "vector,Vec<3u,double>,double>>TetrahedronRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TetrahedronRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.HyperElastic" + } + }, + "description": "Generic Tetrahedral finite elements.\n" + }, + { + "className": "StartNavigationButtonSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "StartNavigationButtonSetting", + "namespaceName": "sofa::gui::component", + "parents": [ + "MouseButtonSetting" + ], + "shortName": "startNavigationButtonSetting", + "templateName": "", + "typeName": "StartNavigationButtonSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Mouse button used", + "name": "button", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GUI.Component" + } + }, + "description": "Start Navigation Button configuration.\n" + }, + { + "className": "StaticSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "StaticSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "OdeSolver", + "LinearSolverAccessor" + ], + "shortName": "staticSolver", + "templateName": "", + "typeName": "StaticSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + }, + { + "destinationTypeName": "NewtonRaphsonSolver", + "help": "Link to a NewtonRaphsonSolver", + "name": "newtonSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Static ODE Solver\n" + }, + { + "className": "StatsSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "StatsSetting", + "namespaceName": "sofa::component::setting", + "parents": [ + "ConfigurationSetting" + ], + "shortName": "statsSetting", + "templateName": "", + "typeName": "StatsSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump state vectors at each time step of the simulation", + "name": "dumpState", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Output in the console an average of the time spent during different stages of the simulation", + "name": "logTime", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Create GNUPLOT files with the positions, velocities and forces of all the simulated objects of the scene", + "name": "exportState", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Setting" + } + }, + "description": "Stats settings.\n" + }, + { + "className": "StopperLagrangianConstraint", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "StopperLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<1u,double>,double>>" + ], + "shortName": "stopperLagrangianConstraint", + "templateName": "Vec1d", + "typeName": "StopperLagrangianConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "index of the stop constraint", + "name": "index", + "type": "i" + }, + { + "defaultValue": "-100", + "group": "", + "help": "minimum value accepted", + "name": "min", + "type": "d" + }, + { + "defaultValue": "100", + "group": "", + "help": "maximum value accepted", + "name": "max", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "Lagrangian-based constraint forcing a 1D DoF to be inside a given range.\n" + }, + { + "className": "StringMeshCreator", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "StringMeshCreator", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "MeshLoader" + ], + "shortName": "stringMeshCreator", + "templateName": "", + "typeName": "StringMeshCreator" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polylines of the mesh loaded", + "name": "polylines", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Edges of the mesh loaded", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Triangles of the mesh loaded", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Quads of the mesh loaded", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Polygons of the mesh loaded", + "name": "polygons", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order edge points of the mesh loaded", + "name": "highOrderEdgePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order triangle points of the mesh loaded", + "name": "highOrderTrianglePositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order quad points of the mesh loaded", + "name": "highOrderQuadPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Tetrahedra of the mesh loaded", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Hexahedra of the mesh loaded", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Prisms of the mesh loaded", + "name": "prisms", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order tetrahedron points of the mesh loaded", + "name": "highOrderTetrahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "High order hexahedron points of the mesh loaded", + "name": "highOrderHexahedronPositions", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Pyramids of the mesh loaded", + "name": "pyramids", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vectors", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Edges", + "name": "edgesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Triangles", + "name": "trianglesGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Quads", + "name": "quadsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Polygons", + "name": "polygonsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Tetrahedra", + "name": "tetrahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Hexahedra", + "name": "hexahedraGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Prisms", + "name": "prismsGroups", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Groups", + "help": "Groups of Pyramids", + "name": "pyramidsGroups", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normals", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all polygons into triangles", + "name": "triangulate", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Divide all n-D elements into their (n-1)-D boundary elements (e.g. tetrahedra to triangles)", + "name": "createSubelements", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Only keep points attached to elements of the mesh", + "name": "onlyAttachedPoints", + "type": "bool" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Translation of the DOFs", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Rotation of the DOFs", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Scale of the DOFs in 3 dimensions", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "", + "help": "4x4 Homogeneous matrix to transform the DOFs (when present replace any)", + "name": "transformation", + "type": "Mat4x4d" + }, + { + "defaultValue": "2", + "group": "", + "help": "Number of vertices", + "name": "resolution", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Procedural creation of a one-dimensional mesh.\n" + }, + { + "className": "SubsetMapping", + "creator": { + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "subsetMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "SubsetMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input indices", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "first index (use if indices are sequential)", + "name": "first", + "type": "I" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "last index (use if indices are sequential)", + "name": "last", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "search radius to find corresponding points in case no indices are given", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable support of topological changes for indices (disable if it is linked from SubsetTopologicalMapping::pointD2S)", + "name": "handleTopologyChange", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to ignore points that are not found in the input model, they will be treated as fixed points", + "name": "ignoreNotFound", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to resize the output MechanicalState to match the size of indices", + "name": "resizeToModel", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "subsetMap", + "templateName": "Vec1d,Vec1d", + "typeName": "SubsetMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input indices", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "first index (use if indices are sequential)", + "name": "first", + "type": "I" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "last index (use if indices are sequential)", + "name": "last", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "search radius to find corresponding points in case no indices are given", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable support of topological changes for indices (disable if it is linked from SubsetTopologicalMapping::pointD2S)", + "name": "handleTopologyChange", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to ignore points that are not found in the input model, they will be treated as fixed points", + "name": "ignoreNotFound", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to resize the output MechanicalState to match the size of indices", + "name": "resizeToModel", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "subsetMap", + "templateName": "Vec3d,Vec3d", + "typeName": "SubsetMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input indices", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "first index (use if indices are sequential)", + "name": "first", + "type": "I" + }, + { + "defaultValue": "4294967295", + "group": "", + "help": "last index (use if indices are sequential)", + "name": "last", + "type": "I" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "search radius to find corresponding points in case no indices are given", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable support of topological changes for indices (disable if it is linked from SubsetTopologicalMapping::pointD2S)", + "name": "handleTopologyChange", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to ignore points that are not found in the input model, they will be treated as fixed points", + "name": "ignoreNotFound", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to resize the output MechanicalState to match the size of indices", + "name": "resizeToModel", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Compute a subset of input DOFs.\n" + }, + { + "className": "SubsetMultiMapping", + "creator": { + "Rigid3d,Rigid3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdRigidTypes<3u,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Rigid3d,Rigid3d", + "typeName": "SubsetMultiMapping,StdRigidTypes<3u,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "SubsetMultiMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec1d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Vec1d,Vec1d", + "typeName": "SubsetMultiMapping,Vec<1u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec2d,Vec2d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Vec2d,Vec2d", + "typeName": "SubsetMultiMapping,Vec<2u,double>,double>,StdVectorTypes,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + }, + "Vec3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "SubsetMultiMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "subsetMultiMap", + "templateName": "Vec3d,Vec3d", + "typeName": "SubsetMultiMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of couples (parent index + index in the parent)", + "name": "indexPairs", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input Object(s)", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output Object(s)", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Compute a subset of the input MechanicalObjects according to a dof index list.\n" + }, + { + "className": "SubsetTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "SubsetTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "subsetTopologicalMapping", + "templateName": "", + "typeName": "SubsetTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if the same set of points is used in both topologies", + "name": "samePoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if edges events and mapping should be handled", + "name": "handleEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if triangles events and mapping should be handled", + "name": "handleTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if quads events and mapping should be handled", + "name": "handleQuads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tetrahedra events and mapping should be handled", + "name": "handleTetrahedra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if hexahedra events and mapping should be handled", + "name": "handleHexahedra", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology points map", + "name": "pointS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology points map (link to SubsetMapping::indices to handle the mechanical-side of the mapping", + "name": "pointD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology edges map", + "name": "edgeS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology edges map", + "name": "edgeD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology triangles map", + "name": "triangleS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology triangles map", + "name": "triangleD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology quads map", + "name": "quadS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology quads map", + "name": "quadD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology tetrahedra map", + "name": "tetrahedronS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology tetrahedra map", + "name": "tetrahedronD2S", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal source -> destination topology hexahedra map", + "name": "hexahedronS2D", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal destination -> source topology hexahedra map", + "name": "hexahedronD2S", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "TopologicalMapping where the destination topology is a subset of the source topology. The implementation currently assumes that both topologies have been initialized correctly.\n" + }, + { + "className": "SubsetTopology", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SubsetTopology", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "subsetTopology", + "templateName": "Rigid3d", + "typeName": "SubsetTopology>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge direction(if edgeAngle > 0)", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction of the triangles (if triAngle > 0)", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the direction of the selected edges and the specified direction", + "name": "edgeAngle", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the normal of the selected triangle and the specified normal direction", + "name": "triAngle", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the tetrahedra to keep", + "name": "tetrahedraInput", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the quads contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points out of the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edges out of the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangles out of the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quads contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quads out of the ROI", + "name": "quadsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedra out of the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra out of the ROI", + "name": "hexahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If localIndices option is activated, will give the number of vertices on the border of the ROI (being the n first points of each output Topology). ", + "name": "nbrborder", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will compute local dof indices in topological elements", + "name": "localIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw ROI", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles", + "name": "drawTriangle", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SubsetTopology", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "subsetTopology", + "templateName": "Vec3d", + "typeName": "SubsetTopology,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Box defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Center(s) of the sphere(s)", + "name": "centers", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius(i) of the sphere(s)", + "name": "radii", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge direction(if edgeAngle > 0)", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Normal direction of the triangles (if triAngle > 0)", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the direction of the selected edges and the specified direction", + "name": "edgeAngle", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max angle between the normal of the selected triangle and the specified normal direction", + "name": "triAngle", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Rest position coordinates of the degrees of freedom", + "name": "rest_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quad Topology", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedron Topology", + "name": "hexahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the tetrahedra to keep", + "name": "tetrahedraInput", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the points contained in the ROI", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the edges contained in the ROI", + "name": "edgeIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the triangles contained in the ROI", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the quads contained in the ROI", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the tetrahedra contained in the ROI", + "name": "tetrahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of the hexahedra contained in the ROI", + "name": "hexahedronIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points contained in the ROI", + "name": "pointsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Points out of the ROI", + "name": "pointsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edges contained in the ROI", + "name": "edgesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Edges out of the ROI", + "name": "edgesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangles contained in the ROI", + "name": "trianglesInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Triangles out of the ROI", + "name": "trianglesOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quads contained in the ROI", + "name": "quadsInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Quads out of the ROI", + "name": "quadsOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedra contained in the ROI", + "name": "tetrahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Tetrahedra out of the ROI", + "name": "tetrahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra contained in the ROI", + "name": "hexahedraInROI", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra out of the ROI", + "name": "hexahedraOutROI", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "If localIndices option is activated, will give the number of vertices on the border of the ROI (being the n first points of each output Topology). ", + "name": "nbrborder", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will compute local dof indices in topological elements", + "name": "localIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw ROI", + "name": "drawROI", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Points", + "name": "drawPoints", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Edges", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Triangles", + "name": "drawTriangle", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Tetrahedra", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "rendering size for box and topological elements", + "name": "drawSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Engine used to create subset topology given box, sphere, plan, ...\n" + }, + { + "className": "SumEngine", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SumEngine", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "sumEngine", + "templateName": "Vec1d", + "typeName": "SumEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vector", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output sum", + "name": "output", + "type": "Vec1d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "SumEngine", + "namespaceName": "sofa::component::engine::analyze", + "parents": [ + "DataEngine" + ], + "shortName": "sumEngine", + "templateName": "Vec3d", + "typeName": "SumEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input vector", + "name": "input", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output sum", + "name": "output", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Analyze" + } + }, + "description": "Computing the sum between two vector of dofs.\n" + }, + { + "className": "SurfacePressureForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SurfacePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "surfacePressureFF", + "templateName": "Rigid3d", + "typeName": "SurfacePressureForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "d" + }, + { + "defaultValue": "0 0 0 0 0 0 1", + "group": "", + "help": "Lower bound of the selection box", + "name": "min", + "type": "RigidCoord3d" + }, + { + "defaultValue": "0 0 0 0 0 0 1", + "group": "", + "help": "Upper bound of the selection box", + "name": "max", + "type": "RigidCoord3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of affected triangles", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of affected quads", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Cyclic pressure application", + "name": "pulseMode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure lower bound force per unit area (active in pulse mode)", + "name": "pressureLowerBound", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Continuous pressure application in Pascal per second. Only active in pulse mode", + "name": "pressureSpeed", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure variation follow the inverse of the volume variation", + "name": "volumeConservationMode", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Whether (non-symmetric) stiffness matrix should be used", + "name": "useTangentStiffness", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Default Volume", + "name": "defaultVolume", + "type": "d" + }, + { + "defaultValue": "0 0 0 0 0 0", + "group": "", + "help": "Main direction for pressure application", + "name": "mainDirection", + "type": "RigidDeriv3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "DEBUG: scale used to render force vectors", + "name": "drawForceScale", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "SurfacePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "surfacePressureFF", + "templateName": "Vec3d", + "typeName": "SurfacePressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Lower bound of the selection box", + "name": "min", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Upper bound of the selection box", + "name": "max", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of affected triangles", + "name": "triangleIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of affected quads", + "name": "quadIndices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Cyclic pressure application", + "name": "pulseMode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure lower bound force per unit area (active in pulse mode)", + "name": "pressureLowerBound", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Continuous pressure application in Pascal per second. Only active in pulse mode", + "name": "pressureSpeed", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Pressure variation follow the inverse of the volume variation", + "name": "volumeConservationMode", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Whether (non-symmetric) stiffness matrix should be used", + "name": "useTangentStiffness", + "type": "bool" + }, + { + "defaultValue": "-1", + "group": "", + "help": "Default Volume", + "name": "defaultVolume", + "type": "d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Main direction for pressure application", + "name": "mainDirection", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "DEBUG: scale used to render force vectors", + "name": "drawForceScale", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Pressure applied on a generic surface (triangular or quadrangular).\n" + }, + { + "className": "TaitSurfacePressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TaitSurfacePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "taitSurfacePressureFF", + "templateName": "Vec3d", + "typeName": "TaitSurfacePressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Controls", + "help": "IN: Rest pressure when V = V0", + "name": "p0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Controls", + "help": "IN: Bulk modulus (resistance to uniform compression)", + "name": "B", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Controls", + "help": "IN: Bulk modulus (resistance to uniform compression)", + "name": "gamma", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Controls", + "help": "IN: Injected (or extracted) volume since the start of the simulation", + "name": "injectedVolume", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "Controls", + "help": "IN: Maximum injection rate (volume per second)", + "name": "maxInjectionRate", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Initial volume, as computed from the surface rest position", + "name": "initialVolume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Current injected (or extracted) volume (taking into account maxInjectionRate)", + "name": "currentInjectedVolume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Rest volume (as computed from initialVolume + injectedVolume)", + "name": "v0", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Current volume, as computed from the last surface position", + "name": "currentVolume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Current pressure, as computed from the last surface position", + "name": "currentPressure", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: dP/dV at current volume and pressure", + "name": "currentStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUT: list of triangles where a pressure is applied (mesh triangles + tessellated quads)", + "name": "pressureTriangles", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUT: Initial surface area, as computed from the surface rest position", + "name": "initialSurfaceArea", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUT: Current surface area, as computed from the last surface position", + "name": "currentSurfaceArea", + "type": "d" + }, + { + "defaultValue": "0.001", + "group": "Visualization", + "help": "DEBUG: scale used to render force vectors", + "name": "drawForceScale", + "type": "d" + }, + { + "defaultValue": "0 1 1 1", + "group": "Visualization", + "help": "DEBUG: color used to render force vectors", + "name": "drawForceColor", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "Results", + "help": "OUT: Volume after a topology change", + "name": "volumeAfterTC", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Results", + "help": "OUT: Surface area after a topology change", + "name": "surfaceAreaAfterTC", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "This component computes the volume enclosed by a surface mesh and apply a pressure force following Tait's equation: $P = P_0 - B((V/V_0)^\\gamma - 1)$.\nThis ForceField can be used to apply :\n * a constant pressure (set $B=0$ and use $P_0$)\n * an ideal gas pressure (set $\\gamma=1$ and use $B$)\n * a pressure from water (set $\\gamma=7$ and use $B$)\n" + }, + { + "className": "Tetra2TriangleTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Tetra2TriangleTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "tetra2TriangleTopologicalMapping", + "templateName": "", + "typeName": "Tetra2TriangleTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Flip Normal ? (Inverse point order when creating triangle)", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true no new triangles are being created", + "name": "noNewTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true the list of initial triangles is initially empty. Only additional triangles will be added in the list", + "name": "noInitialTriangles", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where TetrahedronSetTopology is converted to TriangleSetTopology\n" + }, + { + "className": "TetrahedralCorotationalFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedralCorotationalFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedralCorotationalFEMFF", + "templateName": "Vec3d", + "typeName": "TetrahedralCorotationalFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal tetrahedron data", + "name": "tetrahedronInfo", + "type": "vector,Vec<3u,double>,double>>TetrahedronInformation,CPUMemoryManager,Vec<3u,double>,double>>TetrahedronInformation>>" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"small\", \"large\" (by QR) or \"polar\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Allow specification of different stiffness per element. If there are N element and M values are specified, the youngModulus factor for element i would be localStiffnessFactor[i*M/N]", + "name": "localStiffnessFactor", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "computeGlobalMatrix", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": " draw the forcefield if true", + "name": "drawing", + "type": "bool" + }, + { + "defaultValue": "0 0 1 1", + "group": "Visualization", + "help": " draw color for faces 1", + "name": "drawColor1", + "type": "RGBAColor" + }, + { + "defaultValue": "0 0.5 1 1", + "group": "Visualization", + "help": " draw color for faces 2", + "name": "drawColor2", + "type": "RGBAColor" + }, + { + "defaultValue": "0 1 1 1", + "group": "Visualization", + "help": " draw color for faces 3", + "name": "drawColor3", + "type": "RGBAColor" + }, + { + "defaultValue": "0.5 1 1 1", + "group": "Visualization", + "help": " draw color for faces 4", + "name": "drawColor4", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute and display von Mises stress: 0: no computations, 1: using corotational strain, 2: using full Green strain. Set listening=1", + "name": "computeVonMisesStress", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per element", + "name": "vonMisesPerElement", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per node", + "name": "vonMisesPerNode", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Corotational FEM Tetrahedral finite elements\n" + }, + { + "className": "TetrahedralTensorMassForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedralTensorMassForceField", + "namespaceName": "sofa::component::solidmechanics::tensormass", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedralTensorMassFF", + "templateName": "Vec3d", + "typeName": "TetrahedralTensorMassForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.3", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young's modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeRestInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeRestInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.TensorMass" + } + }, + "description": "Linear Elastic Tetrahedral Mesh\n" + }, + { + "className": "TetrahedronCollisionModel", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "TetrahedronCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "tetrahedronCollisionModel", + "templateName": "", + "typeName": "TetrahedronCollisionModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a tetrahedral mesh, as described in BaseMeshTopology.\n" + }, + { + "className": "TetrahedronDiffusionFEMForceField", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronDiffusionFEMForceField", + "namespaceName": "sofa::component::diffusion", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "tetrahedronDiffusionFEMFF", + "templateName": "Vec1d", + "typeName": "TetrahedronDiffusionFEMForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Constant diffusion coefficient", + "name": "constantDiffusionCoefficient", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Diffusion coefficient for each tetrahedron, by default equal to constantDiffusionCoefficient.", + "name": "tetraDiffusionCoefficient", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Anisotropy ratio (r²>1).\n Default is 1.0 = isotropy.", + "name": "anisotropyRatio", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to handle topology on tetrahedra", + "name": "transverseAnisotropyArray", + "type": "vector" + }, + { + "defaultValue": "meca", + "group": "", + "help": "Tag of the Mechanical Object.", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "To display conductivity map.", + "name": "drawConduc", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Diffusion" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronDiffusionFEMForceField", + "namespaceName": "sofa::component::diffusion", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "tetrahedronDiffusionFEMFF", + "templateName": "Vec2d", + "typeName": "TetrahedronDiffusionFEMForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Constant diffusion coefficient", + "name": "constantDiffusionCoefficient", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Diffusion coefficient for each tetrahedron, by default equal to constantDiffusionCoefficient.", + "name": "tetraDiffusionCoefficient", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Anisotropy ratio (r²>1).\n Default is 1.0 = isotropy.", + "name": "anisotropyRatio", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to handle topology on tetrahedra", + "name": "transverseAnisotropyArray", + "type": "vector" + }, + { + "defaultValue": "meca", + "group": "", + "help": "Tag of the Mechanical Object.", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "To display conductivity map.", + "name": "drawConduc", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Diffusion" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronDiffusionFEMForceField", + "namespaceName": "sofa::component::diffusion", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedronDiffusionFEMFF", + "templateName": "Vec3d", + "typeName": "TetrahedronDiffusionFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Constant diffusion coefficient", + "name": "constantDiffusionCoefficient", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Diffusion coefficient for each tetrahedron, by default equal to constantDiffusionCoefficient.", + "name": "tetraDiffusionCoefficient", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Anisotropy ratio (r²>1).\n Default is 1.0 = isotropy.", + "name": "anisotropyRatio", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to handle topology on tetrahedra", + "name": "transverseAnisotropyArray", + "type": "vector" + }, + { + "defaultValue": "meca", + "group": "", + "help": "Tag of the Mechanical Object.", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "To display conductivity map.", + "name": "drawConduc", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Diffusion" + } + }, + "description": "Isotropic or anisotropic diffusion on Tetrahedral Meshes.\n" + }, + { + "className": "TetrahedronFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>", + "RotationFinder,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedronFEMFF", + "templateName": "Vec3d", + "typeName": "TetrahedronFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "\"small\", \"large\" (by QR), \"polar\" or \"svd\" displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Allow specification of different stiffness per element. If there are N element and M values are specified, the youngModulus factor for element i would be localStiffnessFactor[i*M/N]", + "name": "localStiffnessFactor", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "updateStiffnessMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "", + "name": "computeGlobalMatrix", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Plastic Max Threshold (2-norm of the strain)", + "name": "plasticMaxThreshold", + "type": "d" + }, + { + "defaultValue": "0.0001", + "group": "", + "help": "Plastic Yield Threshold (2-norm of the strain)", + "name": "plasticYieldThreshold", + "type": "d" + }, + { + "defaultValue": "0.9", + "group": "", + "help": "Plastic Creep Factor * dt [0,1]. Warning this factor depends on dt.", + "name": "plasticCreep", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherPt", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "number of dof accumulated per threads during the gather operation (Only use in GPU version)", + "name": "gatherBsize", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw Heterogeneous Tetra in different color", + "name": "drawHeterogeneousTetra", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute and display von Mises stress: 0: no computations, 1: using corotational strain, 2: using full Green strain. Set listening=1", + "name": "computeVonMisesStress", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per element", + "name": "vonMisesPerElement", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "von Mises Stress per node", + "name": "vonMisesPerNode", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Vector of colors describing the VonMises stress", + "name": "vonMisesStressColors", + "type": "vector" + }, + { + "defaultValue": "Blue to Red", + "group": "Visualization", + "help": "Color map used to show stress values", + "name": "showStressColorMap", + "type": "string" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Alpha for vonMises visualisation", + "name": "showStressAlpha", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw points showing vonMises stress interpolated in nodes", + "name": "showVonMisesStressPerNode", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw elements showing vonMises stress interpolated in nodes", + "name": "showVonMisesStressPerNodeColorMap", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw triangles showing vonMises stress interpolated in elements", + "name": "showVonMisesStressPerElement", + "type": "bool" + }, + { + "defaultValue": "0.333", + "group": "Visualization", + "help": "draw gap between elements (when showWireFrame is disabled) [0,1]: 0: no gap, 1: no element", + "name": "showElementGapScale", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "update structures (precomputed in init) using stiffness parameters in each iteration (set listening=1)", + "name": "updateStiffness", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Tetrahedral finite elements.\n" + }, + { + "className": "TetrahedronHyperelasticityFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TetrahedronHyperelasticityFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::hyperelastic", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedronHyperelasticityFEMFF", + "templateName": "Vec3d", + "typeName": "TetrahedronHyperelasticityFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Regularization of the Stiffness Matrix (between true or false)", + "name": "matrixRegularization", + "type": "bool" + }, + { + "defaultValue": "ArrudaBoyce", + "group": "", + "help": "the name of the material to be used. Possible options are: 'ArrudaBoyce', 'Costa', 'MooneyRivlin', 'NeoHookean', 'Ogden', 'StVenantKirchhoff', 'VerondaWestman', 'StableNeoHookean'", + "name": "materialName", + "type": "OptionsGroup" + }, + { + "defaultValue": "", + "group": "", + "help": "The global parameters specifying the material", + "name": "ParameterSet", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The global directions of anisotropy of the material: vector containing anisotropic directions. The vector size is 0 if the material is isotropic, 1 if it is transversely isotropic and 2 for orthotropic materials", + "name": "AnisotropyDirections", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal tetrahedron data", + "name": "tetrahedronInfo", + "type": "vector,Vec<3u,double>,double>>TetrahedronRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TetrahedronRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.HyperElastic" + } + }, + "description": "Generic Hyperelastic Tetrahedral finite elements.\n" + }, + { + "className": "TetrahedronSetGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TetrahedronSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TriangleSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "tetrahedronSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "TetrahedronSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Triangle indices", + "name": "showTriangleIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0.3 0.5 0.8 1", + "group": "Visualization", + "help": "RGBA code color used to draw triangles", + "name": "drawColorTriangles", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawNormals", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "Fiber length visualisation.", + "name": "drawNormalLength", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will recompute triangles orientation according to normals", + "name": "recomputeTrianglesOrientation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will flip normal of the first triangle used to recompute triangle orientation.", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Tetrahedrons indices", + "name": "showTetrahedraIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the tetrahedra in the topology", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the terahedra (between 0 and 1; if <1.0, it produces gaps between the tetrahedra)", + "name": "drawScaleTetrahedra", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "RGBA code color used to draw tetrahedra.", + "name": "drawColorTetrahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TetrahedronSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TriangleSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "tetrahedronSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "TetrahedronSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Triangle indices", + "name": "showTriangleIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0.3 0.5 0.8 1", + "group": "Visualization", + "help": "RGBA code color used to draw triangles", + "name": "drawColorTriangles", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawNormals", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "Fiber length visualisation.", + "name": "drawNormalLength", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will recompute triangles orientation according to normals", + "name": "recomputeTrianglesOrientation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will flip normal of the first triangle used to recompute triangle orientation.", + "name": "flipNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Tetrahedrons indices", + "name": "showTetrahedraIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the tetrahedra in the topology", + "name": "drawTetrahedra", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Scale of the terahedra (between 0 and 1; if <1.0, it produces gaps between the tetrahedra)", + "name": "drawScaleTetrahedra", + "type": "f" + }, + { + "defaultValue": "1 1 0 1", + "group": "Visualization", + "help": "RGBA code color used to draw tetrahedra.", + "name": "drawColorTetrahedra", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to a tetrahedral topology.\n" + }, + { + "className": "TetrahedronSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TetrahedronSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TriangleSetTopologyContainer" + ], + "shortName": "tetrahedronSetTopologyContainer", + "templateName": "", + "typeName": "TetrahedronSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Force the creation of a set of triangles associated with each tetrahedron", + "name": "createTriangleArray", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron indices", + "name": "tetrahedra", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to a tetrahedral topology.\n" + }, + { + "className": "TetrahedronSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TetrahedronSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "TriangleSetTopologyModifier" + ], + "shortName": "tetrahedronSetTopologyModifier", + "templateName": "", + "typeName": "TetrahedronSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "triangles with at least one null values.", + "name": "list_Out", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Remove isolated DOFs", + "name": "removeIsolated", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to a tetrahedral topology.\n" + }, + { + "className": "TextureInterpolation", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TextureInterpolation", + "namespaceName": "sofa::gl::component::engine", + "parents": [ + "DataEngine" + ], + "shortName": "textureInterpolation", + "templateName": "Vec1d", + "typeName": "TextureInterpolation,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of state values.", + "name": "input_states", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input array of coordinates values.", + "name": "input_coordinates", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of texture coordinates.", + "name": "output_coordinates", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "To interpolate only the first dimension of input field (useful if this component need to be templated in higher dimension).", + "name": "scalarField", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "minimum value of state value for interpolation.", + "name": "min_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "maximum value of state value for interpolation.", + "name": "max_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute texture interpolation on manually scale defined above.", + "name": "manual_scale", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug: view state values.", + "name": "drawPotentiels", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Debug : scale of state values displayed.", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Vertex index of values display in graph for each iteration.", + "name": "vertexPloted", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertex state value per iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Engine" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TextureInterpolation", + "namespaceName": "sofa::gl::component::engine", + "parents": [ + "DataEngine" + ], + "shortName": "textureInterpolation", + "templateName": "Vec2d", + "typeName": "TextureInterpolation,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of state values.", + "name": "input_states", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input array of coordinates values.", + "name": "input_coordinates", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of texture coordinates.", + "name": "output_coordinates", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "To interpolate only the first dimension of input field (useful if this component need to be templated in higher dimension).", + "name": "scalarField", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "minimum value of state value for interpolation.", + "name": "min_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "maximum value of state value for interpolation.", + "name": "max_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute texture interpolation on manually scale defined above.", + "name": "manual_scale", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug: view state values.", + "name": "drawPotentiels", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Debug : scale of state values displayed.", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Vertex index of values display in graph for each iteration.", + "name": "vertexPloted", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertex state value per iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Engine" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TextureInterpolation", + "namespaceName": "sofa::gl::component::engine", + "parents": [ + "DataEngine" + ], + "shortName": "textureInterpolation", + "templateName": "Vec3d", + "typeName": "TextureInterpolation,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of state values.", + "name": "input_states", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "input array of coordinates values.", + "name": "input_coordinates", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of texture coordinates.", + "name": "output_coordinates", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "To interpolate only the first dimension of input field (useful if this component need to be templated in higher dimension).", + "name": "scalarField", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "minimum value of state value for interpolation.", + "name": "min_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "maximum value of state value for interpolation.", + "name": "max_value", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "compute texture interpolation on manually scale defined above.", + "name": "manual_scale", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug: view state values.", + "name": "drawPotentiels", + "type": "bool" + }, + { + "defaultValue": "0.0001", + "group": "Visualization", + "help": "Debug : scale of state values displayed.", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "Vertex index of values display in graph for each iteration.", + "name": "vertexPloted", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Vertex state value per iteration", + "name": "graph", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Engine" + } + }, + "description": "Create texture coordinate for a given field.\n" + }, + { + "className": "TopologicalChangeProcessor", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "TopologicalChangeProcessor", + "namespaceName": "sofa::component::topology::utility", + "parents": [ + "BaseObject" + ], + "shortName": "topologicalChangeProcessor", + "templateName": "", + "typeName": "TopologicalChangeProcessor" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "input file name for topological changes.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "0 for adding, 1 for removing, 2 for cutting and associated indices.", + "name": "listChanges", + "type": "vector>" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between 2 actions", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "shift between times in the file and times when they will be read", + "name": "shift", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to re-read the file when reaching the end", + "name": "loop", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will perform operation using Data input lists rather than text file.", + "name": "useDataInputs", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If using option useDataInputs, time at which will be done the operations. Possibility to use the interval Data also.", + "name": "timeToRemove", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "List of point IDs to be removed.", + "name": "pointsToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge IDs to be removed.", + "name": "edgesToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle IDs to be removed.", + "name": "trianglesToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of quad IDs to be removed.", + "name": "quadsToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of tetrahedron IDs to be removed.", + "name": "tetrahedraToRemove", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of hexahedron IDs to be removed.", + "name": "hexahedraToRemove", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to 'true' to save the incision to do in the init to incise even after a movement", + "name": "saveIndicesAtInit", + "type": "bool" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "epsilon snap path", + "name": "epsilonSnapPath", + "type": "d" + }, + { + "defaultValue": "0.25", + "group": "", + "help": "epsilon snap path", + "name": "epsilonSnapBorder", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw information", + "name": "draw", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Utility" + } + }, + "description": "Read topological changes and process them.\n" + }, + { + "className": "TopologyBoundingTrasher", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "TopologyBoundingTrasher", + "namespaceName": "sofa::component::topology::utility", + "parents": [ + "BaseObject" + ], + "shortName": "topologyBoundingTrasher", + "templateName": "Vec3d", + "typeName": "TopologyBoundingTrasher,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "position coordinates of the topology object to interact with.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "-1000 -1000 -1000 1000 1000 1000", + "group": "", + "help": "List of boxes defined by xmin,ymin,zmin, xmax,ymax,zmax", + "name": "box", + "type": "Vec6d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw bounding box (default = false)", + "name": "drawBox", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Utility" + } + }, + "description": "Component removing all elements going outside from the given bounding box.\n" + }, + { + "className": "TopologyChecker", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "TopologyChecker", + "namespaceName": "sofa::component::topology::utility", + "parents": [ + "BaseObject" + ], + "shortName": "topologyChecker", + "templateName": "", + "typeName": "TopologyChecker" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Check topology at each step", + "name": "eachStep", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Utility" + } + }, + "description": "Read topological Changes and process them.\n" + }, + { + "className": "TorsionForceField", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TorsionForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "torsionFF", + "templateName": "Rigid3d", + "typeName": "TorsionForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices of the selected points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "torque to apply", + "name": "torque", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction of the axis (will be normalized)", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "origin of the axis", + "name": "origin", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TorsionForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "torsionFF", + "templateName": "Vec3d", + "typeName": "TorsionForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "indices of the selected points", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "torque to apply", + "name": "torque", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "direction of the axis (will be normalized)", + "name": "axis", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "", + "help": "origin of the axis", + "name": "origin", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Applies a torque to specified degrees of freedom.\n" + }, + { + "className": "TrailRenderer", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "TrailRenderer", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "trailRenderer", + "templateName": "Rigid3d", + "typeName": "TrailRenderer>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Position of the particles behind which a trail is rendered", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Number of time steps to use to render the trail", + "name": "nbSteps", + "type": "I" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "Color of the trail", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the trail", + "name": "thickness", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + }, + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "TrailRenderer", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "trailRenderer", + "templateName": "Vec3d", + "typeName": "TrailRenderer,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Position of the particles behind which a trail is rendered", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "100", + "group": "", + "help": "Number of time steps to use to render the trail", + "name": "nbSteps", + "type": "I" + }, + { + "defaultValue": "0 1 0 1", + "group": "", + "help": "Color of the trail", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the trail", + "name": "thickness", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Render a trail behind particles.\n" + }, + { + "className": "TransformEngine", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Rigid2d", + "typeName": "TransformEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Rigid3d", + "typeName": "TransformEngine>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Vec1d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Vec1d", + "typeName": "TransformEngine,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Vec2d", + "typeName": "TransformEngine,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformEngine", + "templateName": "Vec3d", + "typeName": "TransformEngine,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "translation vector (x,y,z)", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Inputs", + "help": "rotation vector (x,y,z)", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0 1", + "group": "Inputs", + "help": "rotation quaternion (qx,qy,qz,qw)", + "name": "quaternion", + "type": "Quatd" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "true to apply inverse transformation", + "name": "inverse", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Engine applying a transformation on 3d points (translation / rotation).\n" + }, + { + "className": "TransformPosition", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "TransformPosition", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "transformPosition", + "templateName": "Vec3d", + "typeName": "TransformPosition,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "A 3d point on the plane/Center of the scale", + "name": "origin", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input array of 3d points", + "name": "input_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output array of 3d points projected on a plane", + "name": "output_position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "plane normal", + "name": "normal", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "translation vector ", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "rotation vector ", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Inputs", + "help": "scale factor", + "name": "scale", + "type": "Vec3d" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "4x4 affine matrix", + "name": "matrix", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "", + "help": "transformation method either translation or scale or rotation or random or projectOnPlane", + "name": "method", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "", + "help": "the seed value for the random generator", + "name": "seedValue", + "type": "l" + }, + { + "defaultValue": "1", + "group": "", + "help": "the maximum displacement around initial position for the random transformation", + "name": "maxRandomDisplacement", + "type": "d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the entries that are not transformed", + "name": "fixedIndices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "filename of an affine matrix. Supported extensions are: .trm, .tfm, .xfm and .txt(read as .xfm)", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw input points", + "name": "drawInput", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Draw output points", + "name": "drawOutput", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Point size", + "name": "pointSize", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Transform position of 3d points.\n" + }, + { + "className": "TranslateTransformMatrixEngine", + "creator": { + "": { + "class": { + "categories": [ + "Engine" + ], + "className": "TranslateTransformMatrixEngine", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "AbstractTransformMatrixEngine" + ], + "shortName": "translateTransformMatrixEngine", + "templateName": "", + "typeName": "TranslateTransformMatrixEngine" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "[1 0 0 0,0 1 0 0,0 0 1 0,0 0 0 1]", + "group": "Inputs", + "help": "input transformation if any", + "name": "inT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "output transformation", + "name": "outT", + "type": "Mat4x4d" + }, + { + "defaultValue": "", + "group": "", + "help": "translation vector", + "name": "translation", + "type": "Vec3d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Compose the input transform (if any) with the given translation.\n" + }, + { + "className": "Triangle2EdgeTopologicalMapping", + "creator": { + "": { + "class": { + "categories": [ + "TopologicalMapping" + ], + "className": "Triangle2EdgeTopologicalMapping", + "namespaceName": "sofa::component::topology::mapping", + "parents": [ + "TopologicalMapping" + ], + "shortName": "triangle2EdgeTopologicalMapping", + "templateName": "", + "typeName": "Triangle2EdgeTopologicalMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Input topology to map", + "name": "input" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "Output topology to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Topology.Mapping" + } + }, + "description": "Topological mapping where TriangleSetTopology is converted to EdgeSetTopology\n" + }, + { + "className": "TriangleBendingSprings", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "TriangleBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<2u,double>,double>>" + ], + "shortName": "triangleBendingSprings", + "templateName": "Vec2d", + "typeName": "TriangleBendingSprings,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "TriangleBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "SpringForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangleBendingSprings", + "templateName": "Vec3d", + "typeName": "TriangleBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.01", + "group": "Visualization", + "help": "size of the axis", + "name": "showArrowSize", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "The way springs will be drawn:\n- 0: Line\n- 1:Cylinder\n- 2: Arrow", + "name": "drawMode", + "type": "i" + }, + { + "defaultValue": "100", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "vector" + }, + { + "defaultValue": "5", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "pairs of indices, stiffness, damping, rest length", + "name": "spring", + "type": "vector,CPUMemoryManager>>" + }, + { + "defaultValue": "", + "group": "", + "help": "List of lengths to create the springs. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, 0 will be applied everywhere", + "name": "lengths", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "///< List of boolean stating on the fact that the spring should only apply forces on elongations. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, False will be applied everywhere", + "name": "elongationOnly", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "///< List of boolean stating on the fact that the spring is enabled. Must have the same than indices1 & indices2, or if only one element, it will be applied to all springs. If empty, True will be applied everywhere", + "name": "enabled", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the first mstate", + "name": "springsIndices1", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of indices in springs from the second mstate", + "name": "springsIndices2", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a triangular mesh to prevent bending.\n" + }, + { + "className": "TriangleCollisionModel", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "TriangleCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "CollisionModel" + ], + "shortName": "triangleCollisionModel", + "templateName": "Vec3d", + "typeName": "TriangleCollisionModel,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the triangle model", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set to false to disable computation of triangles normal", + "name": "computeNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use the curvature of the mesh to avoid some self-intersection test", + "name": "useCurvature", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a triangular mesh, as described in BaseMeshTopology.\n" + }, + { + "className": "TriangleFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangleFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangleFEMFF", + "templateName": "Vec3d", + "typeName": "TriangleFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "large", + "group": "", + "help": "large: large displacements, small: small displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the elements", + "name": "thickness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Plane strain or plane stress assumption", + "name": "planeStrain", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Triangular finite elements for static topology.\n" + }, + { + "className": "TriangleModelInRegularGrid", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "TriangleModelInRegularGrid", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "TriangleCollisionModel,Vec<3u,double>,double>>" + ], + "shortName": "triangleModelInRegularGrid", + "templateName": "", + "typeName": "TriangleModelInRegularGrid" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the triangle model", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set to false to disable computation of triangles normal", + "name": "computeNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use the curvature of the mesh to avoid some self-intersection test", + "name": "useCurvature", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a triangular mesh in a regular grid, as described in BaseMeshTopology.\n" + }, + { + "className": "TriangleOctreeCollisionModel", + "creator": { + "": { + "class": { + "categories": [ + "CollisionModel" + ], + "className": "TriangleOctreeCollisionModel", + "namespaceName": "sofa::component::collision::geometry", + "parents": [ + "TriangleCollisionModel,Vec<3u,double>,double>>" + ], + "shortName": "triangleOctreeCollisionModel", + "templateName": "", + "typeName": "TriangleOctreeCollisionModel" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this collision model is active and should be included in default collision detections", + "name": "active", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is changing position between iterations", + "name": "moving", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag indicating if this object is controlled by a simulation", + "name": "simulated", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag indication if the object can self collide", + "name": "selfCollision", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "This distance is added along the normal of the collision element to apply 'skinning' effect for collision. The contact arise at this distance of the element.", + "name": "contactDistance", + "type": "d" + }, + { + "defaultValue": "10", + "group": "", + "help": "Contact stiffness", + "name": "contactStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact friction coefficient (dry or viscous or unused depending on the contact method)", + "name": "contactFriction", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Contact coefficient of restitution", + "name": "contactRestitution", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "if set, indicate to the ContactManager that this model should use the given class of contacts.\nNote that this is only indicative, and in particular if both collision models specify a different class it is up to the manager to choose.", + "name": "contactResponse", + "type": "string" + }, + { + "defaultValue": "1 0 0 1", + "group": "", + "help": "color used to display the collision model if requested", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "", + "group": "", + "help": "IDs of the groups containing this model. No collision can occur between collision models included in a common group (e.g. allowing the same object to have multiple collision models)", + "name": "group", + "type": "set" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of collision models this collision model is currently attached to", + "name": "numberOfContacts", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "activate collision on both side of the triangle model", + "name": "bothSide", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set to false to disable computation of triangles normal", + "name": "computeNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "use the curvature of the mesh to avoid some self-intersection test", + "name": "useCurvature", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw the octree structure", + "name": "drawOctree", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Previous (coarser / upper / parent level) CollisionModel in the hierarchy.", + "name": "previous" + }, + { + "destinationTypeName": "CollisionModel", + "help": "Next (finer / lower / child level) CollisionModel in the hierarchy.", + "name": "next" + }, + { + "destinationTypeName": "BaseObject", + "help": "CollisionElementActiver component that activates or deactivates collision element(s) during execution", + "name": "collisionElementActiver" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Collision.Geometry" + } + }, + "description": "Collision model using a triangular mesh mapped to an Octree.\n" + }, + { + "className": "TrianglePressureForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TrianglePressureForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "trianglePressureFF", + "templateName": "Vec3d", + "typeName": "TrianglePressureForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Pressure force per unit area", + "name": "pressure", + "type": "Vec3d" + }, + { + "defaultValue": "[ 0 0 0 , 0 0 0 , 0 0 0]", + "group": "", + "help": "Cauchy Stress applied on the normal of each triangle", + "name": "cauchyStress", + "type": "MatSym<3u,double>" + }, + { + "defaultValue": "", + "group": "", + "help": "Indices of triangles separated with commas where a pressure is applied", + "name": "triangleList", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw triangles which have a given pressure", + "name": "showForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "applied force is computed as the pressure vector times the area at rest", + "name": "useConstantForce", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Map between triangle indices and their pressure", + "name": "trianglePressureMap", + "type": "vector,Vec<3u,double>,double>>TrianglePressureInformation,CPUMemoryManager,Vec<3u,double>,double>>TrianglePressureInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Pressure applied on a triangular geometry.\n" + }, + { + "className": "TriangleSetGeometryAlgorithms", + "creator": { + "Vec2d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TriangleSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetGeometryAlgorithms,Vec<2u,double>,double>>" + ], + "shortName": "triangleSetGeometryAlgorithms", + "templateName": "Vec2d", + "typeName": "TriangleSetGeometryAlgorithms,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Triangle indices", + "name": "showTriangleIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0.3 0.5 0.8 1", + "group": "Visualization", + "help": "RGBA code color used to draw triangles", + "name": "drawColorTriangles", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawNormals", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "Fiber length visualisation.", + "name": "drawNormalLength", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will recompute triangles orientation according to normals", + "name": "recomputeTrianglesOrientation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will flip normal of the first triangle used to recompute triangle orientation.", + "name": "flipNormals", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + }, + "Vec3d": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TriangleSetGeometryAlgorithms", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetGeometryAlgorithms,Vec<3u,double>,double>>" + ], + "shortName": "triangleSetGeometryAlgorithms", + "templateName": "Vec3d", + "typeName": "TriangleSetGeometryAlgorithms,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Visualization", + "help": "Debug : scale for view topology indices", + "name": "showIndicesScale", + "type": "f" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Point indices", + "name": "showPointIndices", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Tag of the Mechanical Object", + "name": "tagMechanics", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Edge indices.", + "name": "showEdgeIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the edges in the topology.", + "name": "drawEdges", + "type": "bool" + }, + { + "defaultValue": "0.4 1 0.3 1", + "group": "Visualization", + "help": "RGB code color used to draw edges.", + "name": "drawColorEdges", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Debug : view Triangle indices", + "name": "showTriangleIndices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawTriangles", + "type": "bool" + }, + { + "defaultValue": "0.3 0.5 0.8 1", + "group": "Visualization", + "help": "RGBA code color used to draw triangles", + "name": "drawColorTriangles", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "if true, draw the triangles in the topology", + "name": "drawNormals", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "Fiber length visualisation.", + "name": "drawNormalLength", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will recompute triangles orientation according to normals", + "name": "recomputeTrianglesOrientation", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, will flip normal of the first triangle used to recompute triangle orientation.", + "name": "flipNormals", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Geometry algorithms dedicated to a triangular topology.\n" + }, + { + "className": "TriangleSetTopologyContainer", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TriangleSetTopologyContainer", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetTopologyContainer" + ], + "shortName": "triangleSetTopologyContainer", + "templateName": "", + "typeName": "TriangleSetTopologyContainer" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the mesh", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial position of points", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parameter to activate internal topology checks (might slow down the simulation)", + "name": "checkTopology", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Number of points", + "name": "nbPoints", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "List of edge indices", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "It true, will check the connexity of the mesh.", + "name": "checkConnexity", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of triangle indices", + "name": "triangles", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology container dedicated to a triangular topology.\n" + }, + { + "className": "TriangleSetTopologyModifier", + "creator": { + "": { + "class": { + "categories": [ + "TopologyObject" + ], + "className": "TriangleSetTopologyModifier", + "namespaceName": "sofa::component::topology::container::dynamic", + "parents": [ + "EdgeSetTopologyModifier" + ], + "shortName": "triangleSetTopologyModifier", + "templateName": "", + "typeName": "TriangleSetTopologyModifier" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Propagate changes to Mechanical object DOFs", + "name": "propagateToDOF", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "triangles with at least one null values.", + "name": "list_Out", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Topology.Container.Dynamic" + } + }, + "description": "Topology modifier dedicated to a triangular topology.\n" + }, + { + "className": "TriangularAnisotropicFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularAnisotropicFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "TriangularFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularAnisotropicFEMFF", + "templateName": "Vec3d", + "typeName": "TriangularAnisotropicFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleInformation,CPUMemoryManager,Vec<3u,double>,double>>TriangleInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal point data", + "name": "vertexInfo", + "type": "vector,Vec<3u,double>,double>>VertexInformation,CPUMemoryManager,Vec<3u,double>,double>>VertexInformation>>" + }, + { + "defaultValue": "large", + "group": "", + "help": "large: large displacements, small: small displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "rotatedInitialElements", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "initialTransformation", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Exponent in the Hosford yield criteria", + "name": "hosfordExponant", + "type": "d" + }, + { + "defaultValue": "1e+15", + "group": "", + "help": "Fracturable threshold used to draw fracturable triangles", + "name": "criteriaValue", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Flag activating rendering of stress values as a color in each triangle", + "name": "showStressValue", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "showStressVector", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of triangles to fracture", + "name": "showFracturableTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute principal stress for each triangle", + "name": "computePrincipalStress", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "transverseYoungModulus", + "name": "transverseYoungModulus", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Fiber angle in global reference frame (in degrees)", + "name": "fiberAngle", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Concentric fiber center in global reference frame", + "name": "fiberCenter", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Flag activating rendering of fiber directions within each triangle", + "name": "showFiber", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Computed fibers direction within each triangle", + "name": "localFiberDirection", + "type": "vector" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Triangular finite element model using anisotropic material.\n" + }, + { + "className": "TriangularBendingSprings", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularBendingSprings", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularBendingSprings", + "templateName": "Vec3d", + "typeName": "TriangularBendingSprings,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "100000", + "group": "", + "help": "uniform stiffness for the all springs", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "uniform damping for the all springs", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "option to draw springs", + "name": "showSprings", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Springs added to a triangular mesh to prevent bending\n" + }, + { + "className": "TriangularBiquadraticSpringsForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularBiquadraticSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularBiquadraticSpringsFF", + "templateName": "Vec3d", + "typeName": "TriangularBiquadraticSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TriangleRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeRestInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0.3", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Ratio damping/stiffness", + "name": "dampingRatio", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If Angular Springs should be used or not", + "name": "useAngularSprings", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "If additional energy penalizing compressibility should be used", + "name": "compressible", + "type": "bool" + }, + { + "defaultValue": "0.4", + "group": "", + "help": "Regularization of the Stiffnes Matrix (between 0 and 1)", + "name": "matrixRegularization", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Biquadratic Springs on a Triangular Mesh.\n" + }, + { + "className": "TriangularFEMForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularFEMForceField", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularFEMFF", + "templateName": "Vec3d", + "typeName": "TriangularFEMForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleInformation,CPUMemoryManager,Vec<3u,double>,double>>TriangleInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal point data", + "name": "vertexInfo", + "type": "vector,Vec<3u,double>,double>>VertexInformation,CPUMemoryManager,Vec<3u,double>,double>>VertexInformation>>" + }, + { + "defaultValue": "large", + "group": "", + "help": "large: large displacements, small: small displacements", + "name": "method", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "rotatedInitialElements", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "initialTransformation", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Exponent in the Hosford yield criteria", + "name": "hosfordExponant", + "type": "d" + }, + { + "defaultValue": "1e+15", + "group": "", + "help": "Fracturable threshold used to draw fracturable triangles", + "name": "criteriaValue", + "type": "d" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "Flag activating rendering of stress values as a color in each triangle", + "name": "showStressValue", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "showStressVector", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of triangles to fracture", + "name": "showFracturableTriangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute principal stress for each triangle", + "name": "computePrincipalStress", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Corotational Triangular finite elements for dynamic topology.\n" + }, + { + "className": "TriangularFEMForceFieldOptim", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularFEMForceFieldOptim", + "namespaceName": "sofa::component::solidmechanics::fem::elastic", + "parents": [ + "BaseLinearElasticityFEMForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularFEMFFOptim", + "templateName": "Vec3d", + "typeName": "TriangularFEMForceFieldOptim,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.45", + "group": "", + "help": "FEM Poisson Ratio in Hooke's law [0,0.5[", + "name": "poissonRatio", + "type": "vector" + }, + { + "defaultValue": "5000", + "group": "", + "help": "FEM Young's Modulus in Hooke's law", + "name": "youngModulus", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data (persistent)", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleInfo,CPUMemoryManager,Vec<3u,double>,double>>TriangleInfo>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data (time-dependent)", + "name": "triangleState", + "type": "vector,Vec<3u,double>,double>>TriangleState,CPUMemoryManager,Vec<3u,double>,double>>TriangleState>>" + }, + { + "defaultValue": "0", + "group": "", + "help": "Ratio damping/stiffness", + "name": "damping", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale factor applied to rest positions (to simulate pre-stretched materials)", + "name": "restScale", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute principal stress for each triangle", + "name": "computePrincipalStress", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Max stress value computed over the triangulation", + "name": "stressMaxValue", + "type": "d" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Flag activating rendering of stress directions within each triangle", + "name": "showStressVector", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Threshold value to render only stress vectors higher to this threshold", + "name": "showStressThreshold", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.FEM.Elastic" + } + }, + "description": "Corotational Triangular finite elements.\n" + }, + { + "className": "TriangularQuadraticSpringsForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularQuadraticSpringsForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularQuadraticSpringsFF", + "templateName": "Vec3d", + "typeName": "TriangularQuadraticSpringsForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Initial Position", + "name": "initialPoints", + "type": "vector" + }, + { + "defaultValue": "0.3", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Ratio damping/stiffness", + "name": "dampingRatio", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "If Angular Springs should be used or not", + "name": "useAngularSprings", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal triangle data", + "name": "triangleInfo", + "type": "vector,Vec<3u,double>,double>>TriangleRestInformation,CPUMemoryManager,Vec<3u,double>,double>>TriangleRestInformation>>" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeRestInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeRestInformation>>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Quadratic Springs on a Triangular Mesh.\n" + }, + { + "className": "TriangularTensorMassForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "TriangularTensorMassForceField", + "namespaceName": "sofa::component::solidmechanics::tensormass", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "triangularTensorMassFF", + "templateName": "Vec3d", + "typeName": "TriangularTensorMassForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "Internal edge data", + "name": "edgeInfo", + "type": "vector,Vec<3u,double>,double>>EdgeRestInformation,CPUMemoryManager,Vec<3u,double>,double>>EdgeRestInformation>>" + }, + { + "defaultValue": "0.3", + "group": "", + "help": "Poisson ratio in Hooke's law", + "name": "poissonRatio", + "type": "d" + }, + { + "defaultValue": "1000", + "group": "", + "help": "Young's modulus in Hooke's law", + "name": "youngModulus", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.TensorMass" + } + }, + "description": "Linear Elastic Membrane on a Triangular Mesh\n" + }, + { + "className": "TubularMapping", + "creator": { + "Rigid3d,Vec3d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "TubularMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping,StdVectorTypes,Vec<3u,double>,double>>>" + ], + "shortName": "tubularMap", + "templateName": "Rigid3d,Vec3d", + "typeName": "TubularMapping,StdVectorTypes,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Discretization of created circles", + "name": "nbPointsOnEachCircle", + "type": "I" + }, + { + "defaultValue": "", + "group": "", + "help": "Radius of created circles", + "name": "radius", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "=0 no peak, =1 peak on the first segment =2 peak on the two first segment, =-1 peak on the last segment", + "name": "peak", + "type": "i" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Create a Tube around rigid points.\n" + }, + { + "className": "TypedMatrixLinearSystem", + "creator": { + "BTDMatrix6d": { + "class": { + "categories": [ + "LinearSystem" + ], + "className": "TypedMatrixLinearSystem", + "namespaceName": "sofa::component::linearsystem", + "parents": [ + "BaseMatrixLinearSystem" + ], + "shortName": "typedMatrixLinearSystem", + "templateName": "BTDMatrix6d", + "typeName": "TypedMatrixLinearSystem,BlockVector<6ul,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Size of the global matrix", + "name": "matrixSize", + "type": "Vec2I" + }, + { + "defaultValue": "1", + "group": "", + "help": "Allows to assemble the system matrix", + "name": "enableAssembly", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal Data indicating a change in the matrix", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Direct" + } + }, + "description": "Linear system dedicated to a Band Tri Diagonal typed matrix.\n" + }, + { + "className": "UnbuiltGaussSeidelConstraintSolver", + "creator": { + "": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UnbuiltGaussSeidelConstraintSolver", + "namespaceName": "sofa::component::constraint::lagrangian::solver", + "parents": [ + "UnbuiltConstraintSolver" + ], + "shortName": "unbuiltGaussSeidelConstraintSolver", + "templateName": "", + "typeName": "UnbuiltGaussSeidelConstraintSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1000", + "group": "", + "help": "maximal number of iterations of iterative algorithm", + "name": "maxIterations", + "type": "i" + }, + { + "defaultValue": "0.001", + "group": "", + "help": "residual error threshold for termination of the Gauss-Seidel algorithm", + "name": "tolerance", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Successive Over Relaxation parameter (0-2)", + "name": "sor", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Add regularization factor times the identity matrix to the compliance W when solving constraints", + "name": "regularizationTerm", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scale the error tolerance with the number of constraints", + "name": "scaleTolerance", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "All constraints must be verified (each constraint's error < tolerance)", + "name": "allVerified", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Compute graphs of errors and forces during resolution", + "name": "computeGraphs", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Sum of the constraints' errors at each iteration", + "name": "graphErrors", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph", + "help": "Graph of each constraint's error at the end of the resolution", + "name": "graphConstraints", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's force at each step of the resolution", + "name": "graphForces", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "", + "group": "Graph2", + "help": "Graph of each constraint's violation at each step of the resolution", + "name": "graphViolations", + "type": "map,allocator>,vector>,less,allocator>>,allocator,allocator>const,vector>>>>" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraints", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraints", + "name": "currentNumConstraintGroups", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current number of constraint groups", + "name": "currentIterations", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Stats", + "help": "OUTPUT: current error", + "name": "currentError", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "OUTPUT: constraint forces (stored only if computeConstraintForces=True)", + "name": "constraintForces", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "enable the storage of the constraintForces.", + "name": "computeConstraintForces", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseConstraintCorrection", + "help": "List of constraint corrections handled by this constraint solver", + "name": "constraintCorrections" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Solver" + } + }, + "description": "A Constraint Solver using the Linear Complementarity Problem formulation to solve Constraint based components using an Unbuilt version of the Gauss-Seidel iterative method\n" + }, + { + "className": "UncoupledConstraintCorrection", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UncoupledConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection>" + ], + "shortName": "uncoupledConstraintCorrection", + "templateName": "Rigid3d", + "typeName": "UncoupledConstraintCorrection>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Compliance value on each dof. If Rigid compliance (7 values): 1st value for translations, 6 others for upper-triangular part of symmetric 3x3 rotation compliance matrix", + "name": "compliance", + "type": "vector" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Default compliance value for new dof or if all should have the same (in which case compliance vector should be empty)", + "name": "defaultCompliance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump the constraint matrix at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the velocities", + "name": "correctionVelocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the positions", + "name": "correctionPositionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use odeSolver integration factors instead of correctionVelocityFactor and correctionPositionFactor", + "name": "useOdeSolverIntegrationFactors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec1d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UncoupledConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<1u,double>,double>>" + ], + "shortName": "uncoupledConstraintCorrection", + "templateName": "Vec1d", + "typeName": "UncoupledConstraintCorrection,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Compliance value on each dof. If Rigid compliance (7 values): 1st value for translations, 6 others for upper-triangular part of symmetric 3x3 rotation compliance matrix", + "name": "compliance", + "type": "vector" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Default compliance value for new dof or if all should have the same (in which case compliance vector should be empty)", + "name": "defaultCompliance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump the constraint matrix at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the velocities", + "name": "correctionVelocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the positions", + "name": "correctionPositionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use odeSolver integration factors instead of correctionVelocityFactor and correctionPositionFactor", + "name": "useOdeSolverIntegrationFactors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec2d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UncoupledConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<2u,double>,double>>" + ], + "shortName": "uncoupledConstraintCorrection", + "templateName": "Vec2d", + "typeName": "UncoupledConstraintCorrection,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Compliance value on each dof. If Rigid compliance (7 values): 1st value for translations, 6 others for upper-triangular part of symmetric 3x3 rotation compliance matrix", + "name": "compliance", + "type": "vector" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Default compliance value for new dof or if all should have the same (in which case compliance vector should be empty)", + "name": "defaultCompliance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump the constraint matrix at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the velocities", + "name": "correctionVelocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the positions", + "name": "correctionPositionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use odeSolver integration factors instead of correctionVelocityFactor and correctionPositionFactor", + "name": "useOdeSolverIntegrationFactors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + }, + "Vec3d": { + "class": { + "categories": [ + "ConstraintSolver" + ], + "className": "UncoupledConstraintCorrection", + "namespaceName": "sofa::component::constraint::lagrangian::correction", + "parents": [ + "ConstraintCorrection,Vec<3u,double>,double>>" + ], + "shortName": "uncoupledConstraintCorrection", + "templateName": "Vec3d", + "typeName": "UncoupledConstraintCorrection,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Compliance value on each dof. If Rigid compliance (7 values): 1st value for translations, 6 others for upper-triangular part of symmetric 3x3 rotation compliance matrix", + "name": "compliance", + "type": "vector" + }, + { + "defaultValue": "1e-05", + "group": "", + "help": "Default compliance value for new dof or if all should have the same (in which case compliance vector should be empty)", + "name": "defaultCompliance", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Dump the constraint matrix at each iteration", + "name": "verbose", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the velocities", + "name": "correctionVelocityFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Factor applied to the constraint forces when correcting the positions", + "name": "correctionPositionFactor", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use odeSolver integration factors instead of correctionVelocityFactor and correctionPositionFactor", + "name": "useOdeSolverIntegrationFactors", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "ConstraintSolver", + "help": "Constraint solvers using this constraint correction", + "name": "constraintSolvers" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Correction" + } + }, + "description": "Component computing constraint forces within a simulated body using the compliance method, approximating the compliance matrix by a diagonal matrix.\n" + }, + { + "className": "UniformLagrangianConstraint", + "creator": { + "Vec1d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "UniformLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "LagrangianConstraint,Vec<1u,double>,double>>" + ], + "shortName": "uniformLagrangianConstraint", + "templateName": "Vec1d", + "typeName": "UniformLagrangianConstraint,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Iterate over the bilateral constraints, otherwise a block factorisation is computed.", + "name": "iterative", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "if false, constrains the pos to be zero / if true constraint the current position to stay at rest position", + "name": "constrainToRestPos", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "A constraint equation applied on all dofs.\n" + }, + { + "className": "UniformMass", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "uniformMass", + "templateName": "Rigid2d", + "typeName": "UniformMass>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "RigidMass<2u,double>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Rigid3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass>" + ], + "shortName": "uniformMass", + "templateName": "Rigid3d", + "typeName": "UniformMass>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1 1 [1 0 0,0 1 0,0 0 1]", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "RigidMass<3u,double>" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "rigid file to load the mass parameters", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec1d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<1u,double>,double>>" + ], + "shortName": "uniformMass", + "templateName": "Vec1d", + "typeName": "UniformMass,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec2d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<2u,double>,double>>" + ], + "shortName": "uniformMass", + "templateName": "Vec2d", + "typeName": "UniformMass,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec3d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<3u,double>,double>>" + ], + "shortName": "uniformMass", + "templateName": "Vec3d", + "typeName": "UniformMass,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + }, + "Vec6d": { + "class": { + "categories": [ + "Mass" + ], + "className": "UniformMass", + "namespaceName": "sofa::component::mass", + "parents": [ + "Mass,Vec<6u,double>,double>>" + ], + "shortName": "uniformMass", + "templateName": "Vec6d", + "typeName": "UniformMass,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "add separately gravity to velocity computation", + "name": "separateGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - mass matrix coefficient", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify one single, positive, real value for the mass of each particle. \nIf unspecified or wrongly set, the totalMass information is used.", + "name": "vertexMass", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Specify the total mass resulting from all particles. \nIf unspecified or wrongly set, the default value is used: totalMass = 1.0", + "name": "totalMass", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "File storing the mass parameters [rigid objects only].", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the center of gravity of the system", + "name": "showGravityCenter", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Visualization", + "help": "factor length of the axis displayed (only used for rigids)", + "name": "showAxisSizeFactor", + "type": "f" + }, + { + "defaultValue": "0", + "group": "", + "help": "to be used if the mass is placed under a mapping", + "name": "compute_mapping_inertia", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the initial center of gravity of the system", + "name": "showInitialCenterOfGravity", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "display the rest positions", + "name": "showX0", + "type": "bool" + }, + { + "defaultValue": "-1 -1", + "group": "", + "help": "optional range of local DOF indices. \nAny computation involving only indices outside of this range \nare discarded (useful for parallelization using mesh partitioning)", + "name": "localRange", + "type": "Vec2i" + }, + { + "defaultValue": "", + "group": "", + "help": "optional local DOF indices. Any computation involving only indices outside of this list are discarded", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "Prevent totalMass from decreasing when removing particles.", + "name": "preserveTotalMass", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mass" + } + }, + "description": "Compute a mass equally spread over the number of nodes.\n" + }, + { + "className": "UniformVelocityDampingForceField", + "creator": { + "Rigid2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Rigid2d", + "typeName": "UniformVelocityDampingForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Rigid3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Rigid3d", + "typeName": "UniformVelocityDampingForceField>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec1d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<1u,double>,double>>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Vec1d", + "typeName": "UniformVelocityDampingForceField,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec2d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<2u,double>,double>>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Vec2d", + "typeName": "UniformVelocityDampingForceField,Vec<2u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec3d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<3u,double>,double>>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Vec3d", + "typeName": "UniformVelocityDampingForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + }, + "Vec6d": { + "class": { + "categories": [ + "ForceField" + ], + "className": "UniformVelocityDampingForceField", + "namespaceName": "sofa::component::mechanicalload", + "parents": [ + "ForceField,Vec<6u,double>,double>>" + ], + "shortName": "uniformVelocityDampingFF", + "templateName": "Vec6d", + "typeName": "UniformVelocityDampingForceField,Vec<6u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0.1", + "group": "", + "help": "velocity damping coefficient", + "name": "dampingCoefficient", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "should it generate damping matrix df/dv? (explicit otherwise, i.e. only generating a force)", + "name": "implicit", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "MechanicalState used by this component", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.MechanicalLoad" + } + }, + "description": "Uniform velocity damping.\n" + }, + { + "className": "UnilateralLagrangianConstraint", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ConstraintSet" + ], + "className": "UnilateralLagrangianConstraint", + "namespaceName": "sofa::component::constraint::lagrangian::model", + "parents": [ + "BaseContactLagrangianConstraint,Vec<3u,double>,double>,UnilateralLagrangianContactParameters>" + ], + "shortName": "unilateralLagrangianConstraint", + "templateName": "Vec3d", + "typeName": "UnilateralLagrangianConstraint,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "ID of the group containing this constraint. This ID is used to specify which constraints are solved by which solver, by specifying in each solver which groups of constraints it should handle.", + "name": "group", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Constraint index (first index in the right hand term resolution vector)", + "name": "constraintIndex", + "type": "I" + }, + { + "defaultValue": "-1", + "group": "", + "help": "The constraint stops acting after the given value.\nUse a negative value for infinite constraints", + "name": "endTime", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + } + ] + }, + "target": "Sofa.Component.Constraint.Lagrangian.Model" + } + }, + "description": "Lagrangian-based inequality constraint\n" + }, + { + "className": "VTKExporter", + "creator": { + "": { + "class": { + "categories": [ + "Exporter" + ], + "className": "VTKExporter", + "namespaceName": "sofa::component::_vtkexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "vTKExporter", + "templateName": "", + "typeName": "VTKExporter" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Set to true to use XML format", + "name": "XMLformat", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "points position (will use points from topology or mechanical state if this is empty)", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "write edge topology", + "name": "edges", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "write triangle topology", + "name": "triangles", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "write quad topology", + "name": "quads", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "write tetra topology", + "name": "tetras", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "write hexa topology", + "name": "hexas", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to visualize (on points)", + "name": "pointsDataFields", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Data to visualize (on cells)", + "name": "cellsDataFields", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "overwrite the file, otherwise create a new file at each export, with suffix in the filename", + "name": "overwrite", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "topology to export", + "name": "topology" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "mechanical state to export", + "name": "mstate" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Export a given mesh in a VTK file.\n" + }, + { + "className": "ValuesFromIndices", + "creator": { + "I": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "I", + "typeName": "ValuesFromIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "RigidCoord2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "RigidCoord2d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "RigidCoord3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "RigidCoord3d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "RigidDeriv2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "RigidDeriv2d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "RigidDeriv3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "RigidDeriv3d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec2d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "Vec2d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "Vec3d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec4d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "Vec4d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec6d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "Vec6d", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "d", + "typeName": "ValuesFromIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "fixed_array", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "fixed_array", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "fixed_array", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "fixed_array": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "fixed_array", + "typeName": "ValuesFromIndices>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "i": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "i", + "typeName": "ValuesFromIndices" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "string": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromIndices", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromIndices", + "templateName": "string", + "typeName": "ValuesFromIndices,allocator>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "input values", + "name": "in", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Indices of the values", + "name": "indices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Output values corresponding to the indices", + "name": "out", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Output values corresponding to the indices, converted as a string", + "name": "outStr", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Find the values given a list of indices.\n" + }, + { + "className": "ValuesFromPositions", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromPositions", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromPositions", + "templateName": "Rigid3d", + "typeName": "ValuesFromPositions>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input values", + "name": "inputValues", + "type": "vector" + }, + { + "defaultValue": "0 1 0", + "group": "Inputs", + "help": "Direction along which the values are interpolated", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the points contained in the ROI", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the edges contained in the ROI", + "name": "edgeValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the triangles contained in the ROI", + "name": "triangleValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the tetrahedra contained in the ROI", + "name": "tetrahedronValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the points contained in the ROI", + "name": "pointVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the edges contained in the ROI", + "name": "edgeVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the triangles contained in the ROI", + "name": "triangleVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the tetrahedra contained in the ROI", + "name": "tetrahedronVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "field type of output elements", + "name": "fieldType", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw vectors line", + "name": "drawVectors", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "vector length visualisation. ", + "name": "drawVectorLength", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "ValuesFromPositions", + "namespaceName": "sofa::component::engine::select", + "parents": [ + "DataEngine" + ], + "shortName": "valuesFromPositions", + "templateName": "Vec3d", + "typeName": "ValuesFromPositions,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Input values", + "name": "inputValues", + "type": "vector" + }, + { + "defaultValue": "0 1 0", + "group": "Inputs", + "help": "Direction along which the values are interpolated", + "name": "direction", + "type": "Vec3d" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Rest position coordinates of the degrees of freedom", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Edge Topology", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Triangle Topology", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Tetrahedron Topology", + "name": "tetrahedra", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the points contained in the ROI", + "name": "values", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the edges contained in the ROI", + "name": "edgeValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the triangles contained in the ROI", + "name": "triangleValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Values of the tetrahedra contained in the ROI", + "name": "tetrahedronValues", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the points contained in the ROI", + "name": "pointVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the edges contained in the ROI", + "name": "edgeVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the triangles contained in the ROI", + "name": "triangleVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Vectors of the tetrahedra contained in the ROI", + "name": "tetrahedronVectors", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "field type of output elements", + "name": "fieldType", + "type": "OptionsGroup" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "draw vectors line", + "name": "drawVectors", + "type": "bool" + }, + { + "defaultValue": "10", + "group": "Visualization", + "help": "vector length visualisation. ", + "name": "drawVectorLength", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Select" + } + }, + "description": "Assign values to primitives (vertex/edge/triangle/tetrahedron) based on a linear interpolation of values along a direction.\n" + }, + { + "className": "VariationalSymplecticSolver", + "creator": { + "": { + "class": { + "categories": [ + "OdeSolver" + ], + "className": "VariationalSymplecticSolver", + "namespaceName": "sofa::component::odesolver::backward", + "parents": [ + "OdeSolver", + "LinearSolverAccessor" + ], + "shortName": "variationalSymplecticSolver", + "templateName": "", + "typeName": "VariationalSymplecticSolver" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0.01", + "group": "", + "help": "Error tolerance for Newton iterations", + "name": "newtonError", + "type": "d" + }, + { + "defaultValue": "5", + "group": "", + "help": "Maximum number of Newton steps", + "name": "steps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to stiffness, > 0", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping coefficient related to mass, > 0", + "name": "rayleighMass", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If kinetic and potential energies should be dumped in a CSV file at each iteration", + "name": "saveEnergyInFile", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Use explicit integration scheme", + "name": "explicitIntegration", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "File name where kinetic and potential energies are saved in a CSV file", + "name": "file", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Compute hamiltonian", + "name": "computeHamiltonian", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "hamiltonian energy", + "name": "hamiltonianEnergy", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "use real potential energy, if false use approximate potential energy", + "name": "useIncrementalPotentialEnergy", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, do not use realloc and free visitors in fwdInteractionForceField.", + "name": "threadSafeVisitor", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Linear solver used by this component", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.ODESolver.Backward" + } + }, + "description": "Implicit time integrator which conserves linear momentum and mechanical energy.\n" + }, + { + "className": "VectorSpringForceField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "ForceField", + "InteractionForceField" + ], + "className": "VectorSpringForceField", + "namespaceName": "sofa::component::solidmechanics::spring", + "parents": [ + "PairInteractionForceField,Vec<3u,double>,double>>" + ], + "shortName": "vectorSpringFF", + "templateName": "Vec3d", + "typeName": "VectorSpringForceField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Rayleigh damping - stiffness matrix coefficient", + "name": "rayleighStiffness", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "springs data", + "name": "springs", + "type": "vector,Vec<3u,double>,double>>Spring,CPUMemoryManager,Vec<3u,double>,double>>Spring>>" + }, + { + "defaultValue": "", + "group": "", + "help": "File name from which the spring information are loaded", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default edge stiffness used in absence of file information", + "name": "stiffness", + "type": "d" + }, + { + "defaultValue": "1", + "group": "", + "help": "Default edge viscosity used in absence of file information", + "name": "viscosity", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "Activate/Deactivate topology mode of the component (springs on each edge)", + "name": "useTopology", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMechanicalState", + "help": "List of mechanical states to which this component is associated", + "name": "mechanicalStates" + }, + { + "destinationTypeName": "MechanicalState", + "help": "First object associated to this component", + "name": "object1" + }, + { + "destinationTypeName": "MechanicalState", + "help": "Second object associated to this component", + "name": "object2" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.SolidMechanics.Spring" + } + }, + "description": "Spring force field acting along the edges of a mesh.\n" + }, + { + "className": "Vertex2Frame", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "Vertex2Frame", + "namespaceName": "sofa::component::engine::transform", + "parents": [ + "DataEngine" + ], + "shortName": "vertex2Frame", + "templateName": "Rigid3d", + "typeName": "Vertex2Frame>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Vertices of the mesh loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "TexCoords of the mesh loaded", + "name": "texCoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Inputs", + "help": "Normals of the mesh loaded", + "name": "normals", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Outputs", + "help": "Frames at output", + "name": "frames", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Use normals to compute the orientations; if disabled the direction of the x axisof a vertice is the one from this vertice to the next one", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Swap normals", + "name": "invertNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Apply a local rotation on the frames. If 0 a x-axis rotation is applied. If 1 a y-axis rotation is applied, If 2 a z-axis rotation is applied.", + "name": "rotation", + "type": "i" + }, + { + "defaultValue": "0", + "group": "Inputs", + "help": "Angle rotation", + "name": "rotationAngle", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Engine.Transform" + } + }, + "description": "Return a rigid position from the vertices, texCoords, normals and facets of any mesh.\n" + }, + { + "className": "ViewerSetting", + "creator": { + "": { + "class": { + "categories": [ + "ConfigurationSetting" + ], + "className": "ViewerSetting", + "namespaceName": "sofa::component::setting", + "parents": [ + "ConfigurationSetting" + ], + "shortName": "viewerSetting", + "templateName": "", + "typeName": "ViewerSetting" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "800 600", + "group": "Viewport", + "help": "resolution of the Viewer", + "name": "resolution", + "type": "Vec2i" + }, + { + "defaultValue": "0", + "group": "Viewport", + "help": "Fullscreen mode", + "name": "fullscreen", + "type": "bool" + }, + { + "defaultValue": "Perspective", + "group": "Camera", + "help": "Camera mode", + "name": "cameraMode", + "type": "OptionsGroup" + }, + { + "defaultValue": "Ray casting", + "group": "Selection", + "help": "The method used to pick objects", + "name": "objectPickingMethod", + "type": "OptionsGroup" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the bounding box of selected nodes", + "name": "showSelectedNodeBoundingBox", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the bounding box when components selected", + "name": "showSelectedObjectBoundingBox", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the positions when a components with 'position' are selected", + "name": "showSelectedObjectPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the surfaces when components with surface topology are selected", + "name": "showSelectedObjectSurfaces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the volumes when components with volume topology are selected", + "name": "showSelectedObjectVolumes", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "Selection", + "help": "Show the position's indices for components with positions are selected", + "name": "showSelectedObjectIndices", + "type": "bool" + }, + { + "defaultValue": "0.02", + "group": "Selection", + "help": "Scale factor for the rendering of selected object", + "name": "showSelectedVisualScaling", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Setting" + } + }, + "description": "Configuration for the Viewer of your application.\n" + }, + { + "className": "Visual3DText", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "Visual3DText", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visual3DText", + "templateName": "", + "typeName": "Visual3DText" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Test to display", + "name": "text", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "3d position", + "name": "position", + "type": "Vec3d" + }, + { + "defaultValue": "1", + "group": "", + "help": "text scale", + "name": "scale", + "type": "f" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "text color. (default=[1.0,1.0,1.0,1.0])", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "perform depth test", + "name": "depthTest", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Display 3D camera-oriented text.\n" + }, + { + "className": "VisualBoundingBox", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualBoundingBox", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualBoundingBox", + "templateName": "", + "typeName": "VisualBoundingBox" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1 1 0 1", + "group": "", + "help": "Color of the lines of the box.", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the lines of the box.", + "name": "thickness", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Display an Axis Aligned Bounding Box (AABB).\n" + }, + { + "className": "VisualGrid", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualGrid", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualGrid", + "templateName": "", + "typeName": "VisualGrid" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "z", + "group": "", + "help": "Plane of the grid\n- x: The grid is oriented in the plane defined by the equation x=0\n- y: The grid is oriented in the plane defined by the equation y=0\n- z: The grid is oriented in the plane defined by the equation z=0", + "name": "plane", + "type": "SelectableItem" + }, + { + "defaultValue": "10", + "group": "", + "help": "Size of the squared grid", + "name": "size", + "type": "f" + }, + { + "defaultValue": "16", + "group": "", + "help": "Number of subdivisions", + "name": "nbSubdiv", + "type": "i" + }, + { + "defaultValue": "0.341176 0.341176 0.341176 1", + "group": "", + "help": "Color of the lines in the grid. default=(0.34,0.34,0.34,1.0)", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "1", + "group": "", + "help": "Thickness of the lines in the grid", + "name": "thickness", + "type": "f" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Display a simple grid.\n" + }, + { + "className": "VisualManagerPass", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualManagerPass", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManager" + ], + "shortName": "visualManagerPass", + "templateName": "", + "typeName": "VisualManagerPass" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set the resolution factor for the output pass. default value:1.0", + "name": "factor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "if true, this pass will be displayed on screen (only one renderPass in the scene must be defined as renderToScreen)", + "name": "renderToScreen", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "name the output texture", + "name": "outputName", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Render pass element: render the relevant tagged objects in a FBO.\n" + }, + { + "className": "VisualManagerSecondaryPass", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualManagerSecondaryPass", + "namespaceName": "sofa::gl::component::shader", + "parents": [ + "VisualManagerPass" + ], + "shortName": "visualManagerSecondaryPass", + "templateName": "", + "typeName": "VisualManagerSecondaryPass" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "set the resolution factor for the output pass. default value:1.0", + "name": "factor", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "if true, this pass will be displayed on screen (only one renderPass in the scene must be defined as renderToScreen)", + "name": "renderToScreen", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "name the output texture", + "name": "outputName", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "list of input passes used as source textures", + "name": "input_tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "output reference tag (use it if the resulting fbo is used as a source for another secondary pass)", + "name": "output_tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "Set the fragment shader filename to load", + "name": "fragFilename", + "type": "string" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "OglShader", + "help": "Shader to apply for compositing", + "name": "shader" + } + ] + }, + "target": "Sofa.GL.Component.Shader" + } + }, + "description": "Chain different rendering pass, for compositing.\n" + }, + { + "className": "VisualModelImpl", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualModelImpl", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel", + "VisualState,Vec<3u,double>,double>>" + ], + "shortName": "visualModelImpl", + "templateName": "Vec3d", + "typeName": "VisualModelImpl" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices coordinates", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Vertices rest coordinates", + "name": "restPosition", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "Normals of the model", + "name": "normal", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if rest positions must be initialized with initial positions", + "name": "initRestPositions", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normal smoothing groups should be read from file", + "name": "useNormals", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if normals should be updated at each iteration", + "name": "updateNormals", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "True if tangents should be computed at startup", + "name": "computeTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if tangents should be updated at each iteration", + "name": "updateTangents", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if topological changes should be handled", + "name": "handleDynamicTopology", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "True if UV seams should be handled even when duplicate UVs are merged", + "name": "fixMergedUVSeams", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "keep and draw lines (false by default)", + "name": "keepLines", + "type": "bool" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "vertices of the model (only if vertices have multiple normals/texcoords, otherwise positions are used)", + "name": "vertices", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "coordinates of the texture", + "name": "texcoords", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "tangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "tangents for normal mapping", + "name": "bitangents", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "edges of the model", + "name": "edges", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "triangles of the model", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Vector", + "help": "quads of the model", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices position indices", + "name": "vertPosIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If vertices have multiple normals/texcoords stores vertices normal indices", + "name": "vertNormIdx", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": " Path to an ogl model", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Name of the Texture", + "name": "texturename", + "type": "string" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Translation of the object", + "name": "translation", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "Transformation", + "help": "Initial Rotation of the object", + "name": "rotation", + "type": "Vec3d" + }, + { + "defaultValue": "1 1 1", + "group": "Transformation", + "help": "Initial Scale of the object", + "name": "scale3d", + "type": "Vec3d" + }, + { + "defaultValue": "1 1", + "group": "", + "help": "Scale of the texture", + "name": "scaleTex", + "type": "Vec2f" + }, + { + "defaultValue": "0 0", + "group": "", + "help": "Translation of the texture", + "name": "translationTex", + "type": "Vec2f" + }, + { + "defaultValue": "", + "group": "", + "help": "Material", + "name": "material", + "type": "Material" + }, + { + "defaultValue": "0", + "group": "", + "help": "Give Texture Coordinates without the texture binding", + "name": "putOnlyTexCoords", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "When sRGB rendering is enabled, is the texture in sRGB colorspace?", + "name": "srgbTexturing", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "List of materials", + "name": "materials", + "type": "vector>" + }, + { + "defaultValue": "", + "group": "", + "help": "Groups of triangles and quads using a given material", + "name": "groups", + "type": "vector>" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Generic visual model. If a viewer is active it will replace the VisualModel alias, otherwise nothing will be displayed.\n" + }, + { + "className": "VisualModelOBJExporter", + "creator": { + "": { + "class": { + "categories": [ + "Exporter" + ], + "className": "VisualModelOBJExporter", + "namespaceName": "sofa::component::_visualmodelobjexporter_", + "parents": [ + "BaseSimulationExporter" + ], + "shortName": "visualModelOBJExporter", + "templateName": "", + "typeName": "VisualModelOBJExporter" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Path or filename where to export the data. If missing the name of the component is used.", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file only at specified number of steps (0=disable, default=0)", + "name": "exportEveryNumberOfSteps", + "type": "I" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file before the simulation starts, once the simulation is initialized (default=false)", + "name": "exportAtBegin", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "export file when the simulation is over and cleanup is called, i.e. just before deleting the simulation (default=false)", + "name": "exportAtEnd", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Enable or disable the component. (default=true)", + "name": "enable", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Export the scene under the Wavefront OBJ format.When several frames are exported the file name have the following pattern: outfile000.obj outfile001.obj.\n" + }, + { + "className": "VisualPointCloud", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualPointCloud", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualPointCloud", + "templateName": "Rigid3d", + "typeName": "VisualPointCloud>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The position of the points to display", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "The draw mode:\n- Point: Coordinates are displayed with points\n- Sphere: Coordinates are displayed using spheres\n- Frame: Coordinates are displayed using oriented frames", + "name": "drawMode", + "type": "SelectableItem" + }, + { + "defaultValue": "1", + "group": "", + "help": "The size of the points and frames", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "The radius list of the spheres", + "name": "sphereRadius", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The color of the points", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show the indices of the points", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "The scale of the indices", + "name": "indicesScale", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "The color of the indices", + "name": "indicesColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + }, + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualPointCloud", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualPointCloud", + "templateName": "Vec3d", + "typeName": "VisualPointCloud,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "The position of the points to display", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "Visualization", + "help": "The draw mode:\n- Point: Coordinates are displayed with points\n- Sphere: Coordinates are displayed using spheres", + "name": "drawMode", + "type": "SelectableItem" + }, + { + "defaultValue": "1", + "group": "", + "help": "The size of the points and frames", + "name": "pointSize", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "The radius list of the spheres", + "name": "sphereRadius", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "The color of the points", + "name": "color", + "type": "RGBAColor" + }, + { + "defaultValue": "0", + "group": "Visualization", + "help": "Show the indices of the points", + "name": "showIndices", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "The scale of the indices", + "name": "indicesScale", + "type": "f" + }, + { + "defaultValue": "", + "group": "", + "help": "The color of the indices", + "name": "indicesColor", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Render a point cloud.\n" + }, + { + "className": "VisualStyle", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "VisualStyle", + "namespaceName": "sofa::component::visual", + "parents": [ + "BaseVisualStyle" + ], + "shortName": "visualStyle", + "templateName": "", + "typeName": "VisualStyle" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Display Flags", + "name": "displayFlags", + "type": "DisplayFlags" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Edit the visual style.\n Allowed values for displayFlags data are a combination of the following:\nshowAll, hideAll,\n showVisual, hideVisual,\n showVisualModels, hideVisualModels,\n showBehavior, hideBehavior,\n showBehaviorModels, hideBehaviorModels,\n showForceFields, hideForceFields,\n showInteractionForceFields, hideInteractionForceFields\n showMapping, hideMapping\n showMappings, hideMappings\n showMechanicalMappings, hideMechanicalMappings\n showCollision, hideCollision\n showCollisionModels, hideCollisionModels\n showBoundingCollisionModels, hideBoundingCollisionModels\n showOptions hideOptions\n showRendering hideRendering\n showNormals hideNormals\n showWireframe hideWireframe\n" + }, + { + "className": "VisualTransform", + "creator": { + "": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualTransform", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualTransform", + "templateName": "", + "typeName": "VisualTransform" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Transformation to apply", + "name": "transform", + "type": "RigidCoord3d" + }, + { + "defaultValue": "0", + "group": "", + "help": "True to apply transform to all nodes below", + "name": "recursive", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Visually apply a (translation,rotation) transformation to visual elements rendering within a node or a sub-graph.\n" + }, + { + "className": "VisualVectorField", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "VisualModel" + ], + "className": "VisualVectorField", + "namespaceName": "sofa::component::visual", + "parents": [ + "VisualModel" + ], + "shortName": "visualVectorField", + "templateName": "Vec3d", + "typeName": "VisualVectorField,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Display the object or not", + "name": "enable", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Starting position of the rendered vectors", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "List of vectors to render", + "name": "vector", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Scaling factor applied on vectors for rendering", + "name": "vectorScale", + "type": "d" + }, + { + "defaultValue": "Line", + "group": "Visualization", + "help": "Draw mode for the vectors- Line: Coordinates are displayed using lines\n- Cylinder: Coordinates are displayed using cylinders\n- Arrow: Coordinates are displayed using arrows", + "name": "drawMode", + "type": "SelectableItem" + }, + { + "defaultValue": "1 1 1 1", + "group": "", + "help": "Color of the vectors", + "name": "color", + "type": "RGBAColor" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Visual" + } + }, + "description": "Render a vector field.\n" + }, + { + "className": "VoidMapping", + "creator": { + "": { + "class": { + "categories": [ + "Mapping" + ], + "className": "VoidMapping", + "namespaceName": "sofa::component::mapping::linear", + "parents": [ + "CRTPLinearMapping" + ], + "shortName": "voidMapping", + "templateName": "", + "typeName": "VoidMapping" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Mapping.Linear" + } + }, + "description": "Special mapping that 'map' points for void (no input DOF). This is useful to be able to create animated objects mixed with real DOFs.\n" + }, + { + "className": "VolumeFromTetrahedrons", + "creator": { + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "VolumeFromTetrahedrons", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "volumeFromTetrahedrons", + "templateName": "Vec3d", + "typeName": "VolumeFromTetrahedrons,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context mechanical.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "tetras", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "hexas", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "The computed volume.", + "name": "volume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will update the volume at each time step of the simulation.", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the mechanical", + "name": "mechanical" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "This component computes the volume of a given volumetric mesh.\n" + }, + { + "className": "VolumeFromTriangles", + "creator": { + "Rigid3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "VolumeFromTriangles", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "volumeFromTriangles", + "templateName": "Rigid3d", + "typeName": "VolumeFromTriangles>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context mechanical.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "The volume is only relevant if the surface is closed.", + "name": "volume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will update the volume at each time step of the simulation.", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the mechanical", + "name": "mechanical" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + }, + "Vec3d": { + "class": { + "categories": [ + "Engine" + ], + "className": "VolumeFromTriangles", + "namespaceName": "sofa::component::engine::generate", + "parents": [ + "DataEngine" + ], + "shortName": "volumeFromTriangles", + "templateName": "Vec3d", + "typeName": "VolumeFromTriangles,Vec<3u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context mechanical.", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "triangles", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "If not set by user, find the context topology.", + "name": "quads", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "The volume is only relevant if the surface is closed.", + "name": "volume", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "If true, will update the volume at each time step of the simulation.", + "name": "update", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology", + "name": "topology" + }, + { + "destinationTypeName": "MechanicalState", + "help": "link to the mechanical", + "name": "mechanical" + } + ] + }, + "target": "Sofa.Component.Engine.Generate" + } + }, + "description": "This component computes the volume of a given closed surfacic mesh.\n" + }, + { + "className": "VolumeMapping", + "creator": { + "Vec3d,Vec1d": { + "class": { + "categories": [ + "Mapping" + ], + "className": "VolumeMapping", + "namespaceName": "sofa::component::mapping::nonlinear", + "parents": [ + "BaseNonLinearMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>,true>" + ], + "shortName": "volumeMap", + "templateName": "Vec3d,Vec1d", + "typeName": "VolumeMapping,Vec<3u,double>,double>,StdVectorTypes,Vec<1u,double>,double>>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are forces mapped ?", + "name": "mapForces", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are constraints mapped ?", + "name": "mapConstraints", + "type": "bool" + }, + { + "defaultValue": "1", + "group": "", + "help": "Are masses mapped ?", + "name": "mapMasses", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Are matrix explicit mapped?", + "name": "mapMatrices", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "set to true to apply this mapping to restPosition at init", + "name": "applyRestPosition", + "type": "bool" + }, + { + "defaultValue": "Stabilized", + "group": "", + "help": "Method used to compute the geometric stiffness:\n-None: geometric stiffness is not computed\n-Exact: the exact geometric stiffness is computed\n-Stabilized: the exact geometric stiffness is approximated in order to improve stability", + "name": "geometricStiffness", + "type": "OptionsGroup" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "State", + "help": "Input object to map", + "name": "input" + }, + { + "destinationTypeName": "State", + "help": "Output object to map", + "name": "output" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Mapping.NonLinear" + } + }, + "description": "Mapping each tetrahedron in a topology to a scalar value representing its volume.\n" + }, + { + "className": "VoxelGridLoader", + "creator": { + "": { + "class": { + "categories": [ + "Loader" + ], + "className": "VoxelGridLoader", + "namespaceName": "sofa::component::io::mesh", + "parents": [ + "VoxelLoader" + ], + "shortName": "voxelGridLoader", + "templateName": "", + "typeName": "VoxelGridLoader" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "Filename of the object", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "", + "group": "", + "help": "Coordinates of the nodes loaded", + "name": "position", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Hexahedra loaded", + "name": "hexahedra", + "type": "vector>" + }, + { + "defaultValue": "1 1 1", + "group": "", + "help": "Dimension of one voxel", + "name": "voxelSize", + "type": "Vec3d" + }, + { + "defaultValue": "0 0 0", + "group": "", + "help": "Resolution of the voxel file", + "name": "resolution", + "type": "Vec3i" + }, + { + "defaultValue": "0 0 0 65535 65535 65535", + "group": "", + "help": "Region of interest (xmin, ymin, zmin, xmax, ymax, zmax)", + "name": "ROI", + "type": "Vec6i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Header size in bytes", + "name": "header", + "type": "i" + }, + { + "defaultValue": "0", + "group": "", + "help": "Header size in bytes", + "name": "segmentationHeader", + "type": "i" + }, + { + "defaultValue": "", + "group": "", + "help": "indices of the hexa in the grid.", + "name": "idxInRegularGrid", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Background values (to be ignored)", + "name": "bgValue", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "Active data values", + "name": "dataValue", + "type": "vector" + }, + { + "defaultValue": "1", + "group": "", + "help": "Interpret voxel as either hexa or points", + "name": "generateHexa", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.IO.Mesh" + } + }, + "description": "Voxel loader based on RAW files.\n" + }, + { + "className": "WarpPreconditioner", + "creator": { + "RotationMatrixd": { + "class": { + "categories": [ + "LinearSolver" + ], + "className": "WarpPreconditioner", + "namespaceName": "sofa::component::linearsolver::preconditioner", + "parents": [ + "MatrixLinearSolver,FullVector,NoThreadManager>" + ], + "shortName": "warpPreconditioner", + "templateName": "RotationMatrixd", + "typeName": "WarpPreconditioner,FullVector,NoThreadManager>" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Parallelize the computation of the product J*M^{-1}*J^T where M is the matrix of the linear system and J is any matrix with compatible dimensions", + "name": "parallelInverseProduct", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "Internal data for the detection of cache invalidation of the matrix factorization", + "name": "factorizationInvalidation", + "type": "bool" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "TypedMatrixLinearSystem", + "help": "The linear system to solve", + "name": "linearSystem" + }, + { + "destinationTypeName": "LinearSolver", + "help": "Link towards the linear solver used to build the warp conditioner", + "name": "linearSolver" + } + ] + }, + "target": "Sofa.Component.LinearSolver.Preconditioner" + } + }, + "description": "Linear system solver wrapping another (precomputed) linear solver by a per-node rotation matrix.\n" + }, + { + "className": "WriteState", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "WriteState", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "writeState", + "templateName": "", + "typeName": "WriteState" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag enabling output of X vector", + "name": "writeX", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling output of X0 vector", + "name": "writeX0", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling output of V vector", + "name": "writeV", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling output of F vector", + "name": "writeF", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "set time to write outputs (by default export at t=0)", + "name": "time", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "period between outputs", + "name": "period", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "set the position DOFs to write", + "name": "DOFsX", + "type": "vector" + }, + { + "defaultValue": "", + "group": "", + "help": "set the velocity DOFs to write", + "name": "DOFsV", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "stop the simulation when the given threshold is reached", + "name": "stopAt", + "type": "d" + }, + { + "defaultValue": "0", + "group": "", + "help": "set the period to measure the kinetic energy increase", + "name": "keperiod", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Write State vectors to file at each timestep.\n" + }, + { + "className": "WriteTopology", + "creator": { + "": { + "class": { + "categories": [ + "_Miscellaneous" + ], + "className": "WriteTopology", + "namespaceName": "sofa::component::playback", + "parents": [ + "BaseObject" + ], + "shortName": "writeTopology", + "templateName": "", + "typeName": "WriteTopology" + }, + "object": { + "data": [ + { + "defaultValue": "unnamed", + "group": "", + "help": "object name", + "name": "name", + "type": "string" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, emits extra messages at runtime.", + "name": "printLog", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "list of the subsets the object belongs to", + "name": "tags", + "type": "TagSet" + }, + { + "defaultValue": "", + "group": "", + "help": "this object bounding box", + "name": "bbox", + "type": "BoundingBox" + }, + { + "defaultValue": "Undefined", + "group": "", + "help": "The state of the component among (Dirty, Valid, Undefined, Loading, Invalid).", + "name": "componentState", + "type": "ComponentState" + }, + { + "defaultValue": "0", + "group": "", + "help": "if true, handle the events, otherwise ignore the events", + "name": "listening", + "type": "bool" + }, + { + "defaultValue": "", + "group": "", + "help": "output file name", + "name": "filename", + "type": "string" + }, + { + "defaultValue": "1", + "group": "", + "help": "flag enabling output of common topology containers.", + "name": "writeContainers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "flag enabling output of specific shell topology containers.", + "name": "writeShellContainers", + "type": "bool" + }, + { + "defaultValue": "0", + "group": "", + "help": "time duration between outputs", + "name": "interval", + "type": "d" + }, + { + "defaultValue": "", + "group": "", + "help": "set time to write outputs", + "name": "time", + "type": "vector" + }, + { + "defaultValue": "0", + "group": "", + "help": "period between outputs", + "name": "period", + "type": "d" + } + ], + "link": [ + { + "destinationTypeName": "BaseContext", + "help": "Graph Node containing this object (or BaseContext::getDefault() if no graph is used)", + "name": "context" + }, + { + "destinationTypeName": "BaseObject", + "help": "Sub-objects used internally by this object", + "name": "slaves" + }, + { + "destinationTypeName": "BaseObject", + "help": "nullptr for regular objects, or master object for which this object is one sub-objects", + "name": "master" + }, + { + "destinationTypeName": "BaseMeshTopology", + "help": "link to the topology container", + "name": "topology" + } + ] + }, + "target": "Sofa.Component.Playback" + } + }, + "description": "Write topology containers information to file at each timestep.\n" + } +] \ No newline at end of file diff --git a/python/sofa-blender.py b/python/sofa-blender.py new file mode 100644 index 0000000..ecf171d --- /dev/null +++ b/python/sofa-blender.py @@ -0,0 +1,16 @@ +#!/usr/bin python +import os +import json + +if not os.path.exists(".sofa_blender"): + print("Create a new sofa blender project") + + if not os.path.exists(".sofa_blender/components_descriptions.json"): + pathname = ".sofa_blender/components_descriptions.json" + with open(pathname,"w") as file: + json.dumps(file, {}) + + os.mkdir(".sofa_blender") +else: + print("Current directory already contains a sofa blender project.") +