Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

  
GiD_Geometry -v2 ?-no_model? create|delete|get|list|edit point|line|surface|  
GiD_Geometry -v2 ?-no_model? create|delete|get|list|edit|exists point|line|surface|volume <num>|append <data>
To create, delete, get data or list the identifiers of geometric entities:

...


-v2 mean version 2 of this command (deprecated version 1 documentation must be seen in help of old versions of the program), the flag reallyeed.


If -no_model flag is specified then entities are stored in a special container, it doesn't belong to the model

...

  • GiD_Geometry -v2 create surface <num>|append planarsurface|nurbssurface|coonsurface|meshsurface|contactsurface <layer> <trimmed>|-interpolate {line1...linen} {o1...on} <geometrical_data>

<geometrical data> depends of each entity type (see get command)

  • GiD_Geometry -v2 create line <num>|append stline|nurbsline|arcline <layer> <inipoint> <endpoint> <geometrical_data>

Instead the NURBS parameters is possible to create a curve that interpolates a list of points (also tangents at start and end can be specified)

...

-interpolate is only valid for nurbssurface, and then must only provide {line1...linen}, but not  {o1...on}  or <geometrical_data>

and in this case the lines must not be a closed boundary, but a series of near-parallel curves, to create a surface interpolating them.

  • GiD_Geometry -v2 create line <num>|append stline|nurbsline|arcline <layer> <inipoint> <endpoint> <geometrical_data>

Instead the NURBS parameters is possible to create a curve that interpolates a list of points (also tangents at start and end can be specified)

  • GiD_Geometry -v2 create point line <num> | append <layer> <point_x> <point_y> <point_z>

...

  • GiD_Geometry delete point|line|surface|volume <args>

with <args>: num numa:numb numa: layer:layer_name

...

  • nurbsline <layer> <inipoint> <endpoint> {-interpolate {p1_x p1_y p1_z ... pn_x pn_y pn_z} ?-tangents {t0_x t0_y t0_z} {t1_x t1_y t1_z}?}
  • GiD_Geometry -v2 create line <num>|append stline <layer> <inipoint> <endpoint>
  • GiD_Geometry -v2 create point <num>|append <layer> <point_x> <point_y> <point_z>


delete: to erase model entities

  • GiD_Geometry -v2 get delete ?-also_lower_entities? point|line|surface|volume <args>

with <args>: num ?line_uv <line_index> | index_boundaries | has_holes | render_mesh | mesh | material?

...

  • GiD_Geometry -v2 get point <num>

will return:
<layer> <geometrical data>
<layer> is the layer name
<geometrical data> the coordinates x y z

  • GiD_Geometry -v2 get line <num>

will return:
<type> <layer> <p1> <p2> <geometrical data>
<type> can be: stline, nurbsline, arcline, polyline
<layer> is the layer name
<p1> identifier of start point
<p2> identifier of end point
<geometrical data> item depends of each entity type
stline: nothing

...

  • {id_1> ... <id_n>}

To delete the geometric entities with this ids. 

-also_lower_entities to delete also its dependent lower-entities when possible (nod depend on other higher-entities or have applied conditions)

{id_1> ... <id_n>} is an objarray of integers (can use a GiD_Geometry list command to select filtered entities, like the surfaces of a layer, etc.)


get: to obtain all the geometrical data to define a single entity

  • GiD_Geometry -v2 get point|line|surface|volume <args>

with <args>: num ?line_uv <line_index> | index_boundaries | has_holes | render_mesh | mesh | material?


line_uv <line_index> extra arguments must be only used in case of nurbs surfaces, to get the information of the <line_index> curve (integer from 1 to the number of trimming curves) on the surface, defined in its uv space parameter.


index_boundaries extra argument to get an objarray of integers with the index of the list of curves where each boundary start.
If the surface doesn't has any hole, it return 0 (the start index of the outer loop)
It the surface has holes it return an index by hole (the start index or the hole inner loop)


has_holes: it return 0 if the surface doesn't has any hole, 1 else


-v2 mean version 2 of this command and then return this data (deprecated version 1 documentation must be seen in help of old versions of the program)

  • GiD_Geometry -v2 get point <num>

will return:
<layer> <geometrical data>
<layer> is the layer name
<geometrical data> the coordinates x y z

  • GiD_Geometry -v2 get line <num>

will return:
<type> <layer> <p1> <p2> <geometrical data>
<type> can be: stline, nurbsline, arcline, polyline
<layer> is the layer name
<p1> identifier of start point
<p2> identifier of end point
<geometrical data> item depends of each entity type
stline: nothing


nurbsline: <d> <n> {x y z ... x y z} {w ... w} {k ... k}
<d>degree of the polynomials
<n> number of control points
<xi yi zi> control points coordinates (objarray of 3*n double values)
<wi> are the weights associated to each control point (objarray of double values. Empty array if is non-rational)
<ki> knots (the amount of knots = amount of control points+degree+1

...

Will return the information of the mesh of the geometric entity <id> as a list: {element_type element_num_nodes node_ids coordinates element_ids connectivities ?radius_and_normals?}
element_type: string
element_num_nodes: integer with the amount of nodes of an element (all mesh elements are of same type)
node_ids: objarray of integers with num_nodes items, where num_nodes is the amount of nodes of the elements of this mesh (node id one-based)
coordinates: objarray with 3*num_nodes items of double with x y z of the mesh nodes.
element_ids: objarray of integers with num_elements items (element id one-based)
connectivities: objarray with element_num_nodes*num_elements of int with the connectivities of the elements (one-based)
radius_and_normals: only for sphere and circle elements. objarray with num_elements items of double with the radius of each element or num_elements*4 items for circles, with the radius and the normal 3D vector (normal to the plane of the circle).


  • GiD_Geometry get point <id> nodesurface|volume <id> mesh_boundary

Will return the information of the boundary of the mesh nod of this point, if any.

Can return "" is there is not any node, the integer node num if it has a node (but the number could be 0 in case of an 'internal' node, not visible)

  • GiD_Geometry get point|line|surface|volume <id> material

Will return an integer with its material index

  • GiD_Geometry get point|line|surface|volume <id> label_on

Will return 1 if the label flag is set to on (to be shown), 0 otherwise

  • GiD_Geometry get point|line|surface|volume <id> selected

Will return 1 if the selected flag is set to on (to be drawn in red), 0 otherwise

  • GiD_Geometry get point|line|surface <id> higherentity

Will return an integer >=0 with the counter of parent entities using this entity.

It is not defined for volume because this is the top category and doesn't has any parent.

...

  • GiD_Geometry list ?<filter_flags>? point|line|surface|volume ?<args>?

<filter_flags> could be: ?-unrendered? ?-higherentity <num_higher>? ?-material <id_material>? ?-layer <layer_name>? ?-plane {a b c d r}? ?-avoid_frozen_layers?
-unrendered flag is only valid for surface
-higherentity <num_higher> to filter the selection and list only the entities with the amount of parents equal to <num_higher> (integer >=0)
-material <id_material>to filter the selection and list only the entities with material id equal to <id_material> (integer >=0)

-layer <layer_name> to filter the selection and list only the entities with layer equal to <layer_name>
-plane <a b c d r> to list only the entities with center that match the plane equation a*x+b*y+c*z+d<=r
-entity_type <types_allowed> to list only the entities of a type contained in <types_allowed>, that must be a list of allowed types ("STLINE | ARCLINE |POLYLINE | NURBLINE | NURBSURFACE PLSURFACE COONSURFACE MESHSURFACE CONTACTSURFACE VOLUME CONTACTVOLUME")

-avoid_frozen_layers to ignore the entities on layers frozenthe geometric entity <id> as a list: {element_type element_num_nodes connectivities}
element_type: string
element_num_nodes: integer with the amount of nodes of an element (all mesh elements are of same type). Can be also a quadratic mesh, whit more nodes than the linear ones of the corners.
connectivities: objarray with element_num_nodes*num_elements of int with the connectivities of the elements (one-based)
a volume with a mesh of prisms or pyramid will have as boundary a mix of quadrilateral and triangles, all are expressed as quadrilaterals (triangles will write the 4th node repeating the last id)

It is not returned any information of node_ids, coordinates or element_ids.

the list of node_ids can be obtained easily with something like this, sorting the ids of connectivities removing duplicates

set node_ids [objarray sort -unique [lindex [GiD_Geometry get volume $volume_id mesh_boundary] 2]]

or

set node_ids [ lsort -unique -integer [lindex [GiD_Geometry get volume $volume_id mesh_boundary] 2]]

the coordinates could be obtained from the node_ids with other commands like GiD_Mesh get node

element_ids are not returned because the boundary faces doesn't exists explicitly in GiD, and then they don't have a number


  • GiD_Geometry get point <id> node

Will return the information of the mesh nod of this point, if any.

Can return "" is there is not any node, the integer node num if it has a node (but the number could be 0 in case of an 'internal' node, not visible)


  • GiD_Geometry get point|line|surface|volume <id> material

Will return an integer with its material index


  • GiD_Geometry get point|line|surface|volume <id> label_on

Will return 1 if the label flag is set to on (to be shown), 0 otherwise

  • GiD_Geometry get point|line|surface|volume <id> selected

Will return 1 if the selected flag is set to on (to be drawn in red), 0 otherwise

  • GiD_Geometry get point|line|surface <id> higherentity

Will return an integer >=0 with the counter of parent entities using this entity.

It is not defined for volume because this is the top category and doesn't has any parent.

  • GiD_Geometry get point <id> forced surface|volume

In case of being a point forced to be meshes as a node of a surface or volume it return the id of this geometrical entity


list: to get a list of entity identifiers of a range or inside some layer

  • GiD_Geometry list ?<filter_flags>? point|line|surface|volume ?<args>?

<filter_flags> could be: ?-count? ?-unrendered? ?-higherentity <num_higher>? ?-material <id_material>? ?-layer <layer_name>? ?-plane {a b c d r}? ?-avoid_frozen_layers? ?-mesh_data element_type|structured|meshing|size|skip|boundary_layer|mesher|point_forced_to?

-count to return the amount of entities instead of the objarray with its ids
-unrendered flag is only valid for surface
-higherentity <num_higher> to filter the selection and list only the entities with the amount of parents equal to <num_higher> (integer >=0)
-material <id_material>to filter the selection and list only the entities with material id equal to <id_material> (integer >=0)

-layer <layer_name> to filter the selection and list only the entities with layer equal to <layer_name>
-plane <a b c d r> to list only the entities with center that match the plane equation a*x+b*y+c*z+d<=r
-entity_type <types_allowed> to list only the entities of a type contained in <types_allowed>, that must be a list of allowed types ("STLINE | ARCLINE |POLYLINE | NURBLINE | NURBSURFACE PLSURFACE COONSURFACE MESHSURFACE CONTACTSURFACE VOLUME CONTACTVOLUME")

-avoid_frozen_layers to ignore the entities on layers frozen

-mesh_data allow to list entities depending on extra meshing information attached to them:

-mesh_data element_type <element_type> line|surface|volume

-mesh_data structured full|semi|center line|surface|volume
-mesh_data meshing duplicate line|surface
-mesh_data meshing tobemeshed_yes|tobemeshed_no point|line|surface|volume
-mesh_data size point|line|surface|volume
-mesh_data skip point|line
-mesh_data boundary_layer line|surface
-mesh_data mesher <mesher_id> surface|volume
-mesh_data point_forced_to surface|volume point


<args>: <num>|<num_min>:<num_max>

...

<selected> to set the selection flag (value 0 or 1)


exists: to check if a single entity exists or not

  • GiD_Geometry exists point|line|surface|volume <id>

Return 1 if exists, 0 otherwise



Examples:

Creation of a new NURBS surface:

...