# Modal Geometry

## Geometry modelling

### Principle

To begin with the geometry modeling, we should know about three important concepts, i.e. coordinates, nodes and links. A geometry is made up of these three elements.

#### Coordinates

##### Global and local coordinates

There are two kinds of coordinate systems in Modal, i.e. the global coordinate system and local coordinate system. The global coordinate system which defines the global origin point and global X, Y, and Z axis, is a kind of Cartesian coordinate. The No. of global coordinate system is 0 in Modal. The local coordinate systems are all defined referring to the global coordinate. Three kinds of local coordinate systems are available now, i.e. the Cartesian coordinate, the cylindrical coordinate and the spherical coordinate. You can have only one global coordinate, but many local coordinates. All the coordinates in Modal are defined according to the right-hand rule.

##### Cartesian coordinate

To define a point in the Cartesian coordinate system, you need three translations x, y, and z as the following:

##### Cylindrical coordinate

To define a point in the Cylindrical coordinate system, you need radius x, rotation y, and translation z, as the following:

##### Spherical coordinate

To define a point in the Spherical coordinate system, you need radius x, rotation y, and rotation z, as the following:

It’s easy to transform between these three coordinate systems.

##### Define a coordinate

To define a local coordinate system, you should assign an ID No., select the coordinate type, and specify the position and direction of local coordinate frame. A local coordinate* O*_{L}*X*_{L}*Y*_{L}*Z*_{L }is always defined referring to the global coordinate *OXYZ*. In Modal, three points are employed to specify the coordinate frame, i.e. the original point *P*_{1}, a point *P*_{2}* *on the *X*_{L} aix, and another point *P*_{3 }on the *X*_{L}*Z*_{L} plane. For convenience, the point *P*_{3 }is usually selected on the local *Z*_{L }axis.

As shown in the above picture: the local *X*_{L} axis can be determined by *P*_{1} and *P*_{2}; the plane *X*_{L}-*Z*_{L} can be determined by *P*_{1}, *P*_{2}, and *P*_{3}, thus the *Z*_{L }axis can also be obtained; the *Y*_{L }axis can then be determined according to the right-hand rule.

You can also define a local coordinate system by the origin point and three Euler angles.

#### Nodes

##### Define a node

A node must belong to a coordinate, either the global coordinate system or a local coordinate system. Besides the coordinate ID, you still need to specify its No. and x, y, z values.

##### Directions of a node

In Modal, it’s very important that the directions of a node are defined in the local coordinate system.

In a local Cartesian coordinate, all the points have the same directions with local axis. These three directions accord with right-hand rule.

In a local cylindrical coordinate: the x direction vector start from the cross point *O*’ to node point *P*; the z direction is the same as local *Z*_{L} axis; and the y direction is tangential to the circle. These three directions accord with right-hand rule.

In a local spherical coordinate: the x direction vector start from the origin point to node point *P*; the y direction is tangential to the longitude circle; and the z direction is tangential to the latitude circle. These three directions accord with right-hand rule.

#### Links

Two types of link are supported in Modal: lines and polygons.

A line is defined by two nodes. For instance, "3 5" defines a trace line between node 3 and node 5.

A polygon is defined by a sequence of nodes. You are allowed to define a polygon with arbitrary number of nodes, which should be arranged according to the clockwise or anticlockwise direction. For instance, "1 2 3 4 5 6" defines a hexagon.

### Geometry in Modal software

To build a geometry model in the Modal software, you have three methods at least:

- Use the integrated function for geometry modeling in Modal
- Import geometry from UFF files;
- Create geometry information in the Excel, and then copy and paste them to the "Config" view.

#### geometry modeling illustration

In this section, the process of creating an uneven spaced plate is introduced.

The plate is 10 in width, and 114 in length, which is divided into 12 segments. The first 4 segments (A) and last four segments (C) are evenly distributed with an interval of 8, and the middle 4 segments (B) are evenly distributed with an interval of 12.5. To ensure the nodes numbered continuously, the following steps should be processed:

- Segment A. The parameters should be set as below:

The structure showed as below is got：

- Segment B. The origin point of segment B should be node 9. The value of Point on X-Axis and Point in XZ-Plane will be changed automatically.

The structure showed as below is got：

- Segment C. The origin point of segment C should be node 19. The value of Point on X-Axis and Point in XZ-Plane will be changed automatically.

- Note that there are some repeated nodes, for example, node 9 and node 11, node 10 and node 12. Remove all the repeated nodes by pressing the button of "validity check" .

- Note that the IDs of nodes are not continuous now. Renumber all the nodes in-order by pressing the button. The task of modeling has been accomplished by now.

#### Basic geometry library

Geometry modeling is realized in the "Config" view or 3D "Geometry" view by operating the relevant toolbar and right click menu. The location, shape, mesh and numbering of a 3D object can be totally specified by setting its local coordinate system, mesh type, first ID and properties. Several internal 3D objects are included in Modal, such as Line Segments, Line, Rectangle, Trapezia, Sector, Elliptic Sector, Cube, Elliptic Cylinder, Cone, and Sphere.

When bundling several 3D objects together, there may exist some repeated nodes, which will lead to some problems. It’s recommended to delete these repeated nodes. You can finish this task conveniently in Modal.

##### Local coordinate systems

Each new 3D object will be created with a new local coordinate, whose type depends on the different kinds of object. You should define the origin point and coordinate frame in the below interface.

The local coordinate is determined by three geometry point in Modal.

The ID# will be specified automatically. Of course you can change it if necessary. You can type the three points manually, or select an existed node from the "Node" list. If a node is selected, its global coordinate value will be filled into the blanks automatically.

Note: On the icons for adding 3D objects in the toolbar, the light blue point indicates the origin of local coordinate system. For example, the icon indicates that the origin of a rectangle object lies in its bottom left corner.

Moreover, there is hyperlink text of "Illustration" on the dialog of setting properties. Illustration graph of 3D object to be added will show when moving cursor on it.

##### Mesh type

This option allows you to set the mesh type to frame or surface. If the surface type is selected, the meshed can be rendered. For a line object, only the frame type is optional.

##### st ID

This option allows you to set the first node ID of a new 3D object. Modal automatically assigns the 1st ID for the new object. It’s recommended to set this parameter equal or large than the default value for a primary user.

Of course, in some occasions, setting the 1st ID flexibly will greatly reduce the workload for an advanced user.

##### Properties

**Line Segments**

Add line segments between two specified nodes. If "Only Nodes" is checked, then the links will not be added.

**Line**

Only the length and number of segments are required for a line object. The line is along the X axis of local coordinate, and its local origin locates in the left fringe. The node IDs are increasing from its left to right. The new coordinate is of Cartesian type.

**Rectangle**

Length, width and their number of segments should be specified for a rectangle object. The local origin of a rectangle object locates in its bottom left corner. The node IDs are increasing from its left to right. The nodes are numbered from the origin, in the turn of from left to right and from bottom to top. The new coordinate is of Cartesian type.

**Trapezia**

Upper side length, nether left side length, nether right side length, height and their number of segments should be specified for a trapezia object. The local origin of a trapezia object is the intersection point of left height line and nether side, which is shown as the red point in the figure below. The nodes are numbered in the turn of from bottom to top and from left to right. The new coordinate is of Cartesian type.

If the length of nether left side or nether right side is equal to zero, it’s a right-angle trapezia. If both of them are equal to zero, it’s a rectangle. If the length of upper side is equal to zero, it’s a triangle.

**Sector**

The shape of a sector object is specified by the sector angle, inner radius and outer radius. To mesh the sector you should set the number of segments of sector angle and radius. The local origin of a sector object is right the circle center. The sector object is distributed symmetrically to the Y axis of local coordinate system. The nodes IDs are increasing from inner to outer in the anticlockwise direction. The new coordinate is of Cylindrical type.

If the sector angle is equal to 360 degrees, it’s a hollow cirque. If the inner radius is equal to zero, it’s a solid sector. If the sector angle is equal to 360 degrees, and the inner radius is equal to zero, it’s a solid circle.

**Elliptic Sector**

The shape of an elliptic sector object is specified by the sector angle, long radius and short radius. To mesh the elliptic sector you should set the number of segments of sector angle and radius. The local origin of a elliptic sector object is right the ellipse center. The nodes IDs are increasing from inner to outer in the anticlockwise direction. The new coordinate is of Cartesian type.

If the sector angle is equal to 360 degrees, it’s an ellipse. If the long radius is equal to the short radius, it’s a circle sector, which is the same as the sector object introduced above. If the sector angle is equal to 360 degrees, and the long radius is equal to the short radius, it’s a solid circle too.

**Cube**

Length, width, height and their number of segments should be specified for a cube object. The local origin of a cube object locates in the nether left corner of the front side, which is shown as the red point in the figure below. The nodes are numbered from the origin, and the IDs are increasing from nether to upper in the anticlockwise direction. The new coordinate is of Cartesian type.

There is neither top side nor bottom side in this cuboid object. If necessary, you can bundle this object with two rectangle objects, and then remove the repeated nodes to get a cube with all six sides. If the length, width and height are all equal, it’s a cube.

**Elliptic Cylinder**

Long axis and short axis and height should be specified for an elliptic cylinder object. To mesh this object you should set the number of segments of circumference and height. The local origin of an elliptic cylinder object is right the ellipse center of bottom side. The nodes are numbered from the Y axis of local coordinate, and the IDs are increasing from bottom to top in the anticlockwise direction. If the cross section is an circle, the new coordinate is of Spherical type. If the cross section is an ellipse, the new coordinate is of Cartesian type.

There is neither top side nor bottom side in this elliptic cylinder object. If necessary, you can bundle this object with two sector or elliptic sector objects, and then remove the repeated nodes to get a elliptic cylinder with top and bottom sides.

If the long axis is equal to the short axis, it’s a common cylinder.

**Cone**

Upper radius, nether radius and height should be specified for frustum of a cone object. To mesh this object you should set the number of segments of circumference and height. The local origin of a cone object is right the circle center of bottom side. The nodes are numbered from the Y axis of local coordinate, and the IDs are increasing from bottom to top in the anticlockwise direction. The new coordinate is of Cylinder type.

There is neither top side nor bottom side in this cone object. If necessary, you can bundle this object with two sector or elliptic sector objects, and then remove the repeated nodes to get a cone with top and bottom sides.

If the upper radius or nether radius axis is equal to zero, it’s a complete cone (not a frustum).

**Sphere**

Radius and range of latitude angle should be specified for frustum of a sphere object. The range of a latitude angle is [-90,90] degree. Latitude angle of zero means the equator. Latitude angle of -90 degree means the south pole. Latitude of 90 means the north pole. To mesh this object you should set the number of segments of circumference and latitude angle. The nodes are numbered from the negative Y axis of south latitude plane in the local coordinate, and the IDs are increasing from south to north in the anticlockwise direction. The new coordinate is of Spherical type.

If the latitude angle is greater than -90 degree and less than 90 degree, it’s the frustum of a sphere. There is neither top side nor bottom side in this cone object. If necessary, you can bundle this object with two sector or elliptic sector objects, and then remove the repeated nodes to get a complete frustum of sphere. If the latitude angle ranges from -90 degree to 90 degree, it’s a complete sphere. If the latitude angle ranges from zero to 90 degree, it’s a hemisphere.

#### Interactive geometry modelling

Modal also provides you with functions of interactive geometry modeling. You can add nodes, lines, polygons and 3D objects just by mouse clicking, and realize operations of translation, zoom, rotation, deletion, and so on. The functions are accessible by the Graphics Extra Toolbar.

The graphics extra toolbar is available only when geometry, mode shape or ODS animation are showed in the current main window. It is used to control the 3 dimension graphics and animations. This toolbar is the same as configuration extra toolbar, only different buttons are enabled, and its floating style is as below:

The functions of each button as follows:

: Show the interface for geometry modeling

: Check all items, and remove the repeated nodes

: Renumber all the nodes in-order

: Redo the previous undone action

: Reset the layout to show the objects in window

: Show the grid plane or not. There is a dropdown menu below this button:

: Show the grid plane or not | |

: Snap to grid point | |

: Call the dialog to set the parameters of grid plane |

Referring to the global coordinate or some local coordinate, the position of the grid plane can be set by changing the parameters in the dialog. With the grid plane, you’ll be convenient to edit the geometry, such as adding a node or moving a node. Note that the coordinate values displayed are all relative to the reference coordinate, and in the format of Cartesian, even if the reference coordinate is of cylinder or sphere type.

: Add line segments between two nodes. There is a dropdown menu below this button:

: To select nodes by mouse. There is a dropdown menu below this button:

: Show the default 3D view. There is a dropdown menu below this button:

: Display the transparent surface of un-deformed structure. There is a dropdown menu below this button:

: Render animation surface (for polygon elements) of not

: Show the single view or quad view in the window

: Select mode No. from the list (for mode shape animation)

: Turn to next mode (for mode shape animation)

: Turn to previous mode (for mode shape animation)

#### Import geometry

You can import geometry information from UFF 15/82/2412 files and IGES files.

You can create geometry information in the Excel, and then copy and paste them to the "Config" view.