MotionView User's Guide

Point to Deformable Curve (PTDCV) Joint

Point to Deformable Curve (PTDCV) Joint

Previous topic Next topic Expand/collapse all hidden text  

Point to Deformable Curve (PTDCV) Joint

Previous topic Next topic JavaScript is required for expanding text JavaScript is required for the print function  

This section describes the Point to Deformable Curve (PTDCV) Joint entity of MotionView and shows the various usage, creation, and editing methods.

Theory/Background

The Point to Deformable Curve Joint constrains a fixed point on a body to slide along a curve that passes through the origins of a specified set of markers.  These markers may belong to different bodies.  As the markers move in space, the curve is calculated at every time step using CUBIC spline interpolation through the marker origins. H ence, the curve deforms as the markers move about.

This constraint is useful for simulating connection between a point on a body and a slender, flexible element, such as a cable (for example, a ski chairlift).

The topological information required to define an PTDCV Joint is shown in the figure below:

point_to_deformable_curve_joint_diagram_mv

Entity Data Members

The data members of the PTDCV Joint can be classified into the following members:

Connectivity

An PTDCV Joint needs the following:

One Body – Body, this is the body that will slide on the Deformable Curve.
One Point – Point, the initial location of the sliding body on the Deformable Curve.
One Deformable Curve – DeformableCurve, this is the Deformable Curve to which the sliding body is connected to.

This advanced joint can only be modeled as a Single entity (it cannot be modeled as a Pair entity).

Properties

There are no editable properties for a Point to Deformable Curve Joint.

Creating and Editing Joints

To learn how to add a Point to Deformable Curve Joint to a model, please see the Joints topic.

Important Note - In order to completely specify a Point to Deformable Curve Joint, the following entities must be created first:

1.One Deformable Curve (created using the Deformable Curve panel entityCurvesDeformable-24).
2.One Body and One Point (to be used as part of the Point to Deformable Curve Joint definition).
hmtoggle_plus1To create/add a Point to Deformable Curve Joint to a model:
1.Once an PTDCV Joint has been added to the model using any of the "entity" creation methods, the panel for the joint will automatically be displayed in the panel area.  See the panel examples below:

point_to_deformable_curve_joint_panel_conn_tab_mv

Joints Panel (PTDCV Joint) – Connectivity Tab

2.In order to complete the joint definition, four entities have to be specified.  From Connectivity tab, select the body that is to slide on the Deformable Curve of this joint from the graphics area, or double click the Body collector to open to the model tree (from which the desired body can be selected).  The model tree in the Select a Body dialog is shown below:

point_to_deformable_curve_joint_select_body_dialog_mv

3.Use the Point collector/model tree to specify the point of the PTDCV joint (or activate the collector and pick the point from the graphics area).

This is the point which is to be the initial position of the sliding body.

4.Use the Deformable Curve collector/model tree to select the curve that is to be used for the joint (or activate the collector and pick the curve from the graphics area).

The PTDCV Joint definition is now complete.

hmtoggle_plus1To edit or change the definition of a Joint entity:
1.Left click the Advanced Joints panel icon entityAdvancedJoints-24 on the Constraint toolbar.

The Project Browser will filter the entities and display only the Advanced Joints in the model.

2.Select the desired joint in the Project Browser.

The corresponding panel is automatically displayed.

3.From the Connectivity tab, use the Joint type drop-down menu to change the joint type, or use the collectors to change the bodies and other topological/property attributes of the joint.

Point to Deformable Curve Joint in MDL and XML Formats

The model containing the PTDCV Joint can be saved in MDL format from MotionView and exported in the MotionSolve XML format.

hmtoggle_plus1Point to Deformable Curve Joint in MDL (Model Definition Language)

Syntax:

*PointToDeformableCurveJoint(ptdcv_name, "ptdcv_label", body,

                                           point,

                                           def_curve)

Example:

*PointToDeformableCurveJoint(aj_ptdcv, "Point to Deformable Curve", b_slb, p_hm_28, defcrv_crv1)

To understand the complete syntax of the MDL statement, please refer to the *PointToDeformableCurveJoint topic.

To learn how to create a complete model using MDL Statements, please refer to tutorial MV-1060: Introduction to MDL.

hmtoggle_plus1Point to Deformable Curve Joint in XML Format

The PTDCV Joint when exported to the MotionSolve XML format is defined as a Constraint_PTDCV statement.

Syntax:

<Constraint_PTDCV

   id             =     "integer"

   Label          =     “Advance Joint Name”

   i_marker_id    =     "integer"

   ref_dcurve_id    =   "integer"

/>

In case of the PTDCV Joint the model statement will be as shown below:

<Constraint_PTDCV

  id                  = "301001"

  label               = "Point to Deformable Curve Joint"

  i_marker_id         = "30110181"

  ref_dcurve_id       = "301001"

/>

In the above XML Model statement the i_marker_id and j_marker_id represent the I and J markers of the Joint which belong to Body 1 and Body 2 respectively.  To understand the complete syntax of the Constraint_PTDCV XML model statement, please refer to the MotionSolve Reference Guide Page for Constraint_PTDCV.

Creating and Editing Point to Deformable Curve Joints using Tcl

In MotionView, Tcl can be used to add any MDL entities to the model.  There are two Tcl commands that can be used to add an entity:

hmtoggle_arrow1InterpretEntity

Syntax:

mdlmodel_handle InterpretEntity new_handle keyword varname label

In case of the PTDCV Joint the statement will look as shown below:

mdlmodel_handle InterpretEntity advjoint PointToDeformableCurveJoint aj_ptdcv "\"Point to Deformable Curve\"" b_slb p_hm_28 defcrv_crv1;

hmtoggle_arrow1InterpretSet

*This command is not applicable for Point to Deformable Curve joint entities.

The InterpretEntity command is used to add entities to the model and the InterpretSet command is used to set the entity properties.  So in the case of the Point to Deformable Curve Joint, the properties that can be set are the Joint Initial Conditions.  Extended definitions for InterpretEntity and InterpretSet can be found in the HyperWorks Desktop Reference Guide.

Note - When using the InterpretEntity and InterpretSet commands, it is important to also use the Evaluate command in order for the changes to take effect immediately.

To learn how to create a complete model using Tcl commands, please refer to tutorial MV-1040: Model Building Using Tcl.

See Also:

Advanced Joints Panel

Adding and Removing Entities

*PointToDeformableCurveJoint (MDL Model Statement)

*DeformableCurve (MDL Model Statement)

Constraint_PTDCV (XML Command)

InterpretEntity (Tcl Command)

InterpretSet (Tcl Command)