Navigation:  Hull Design >

Exporting Curves

Print this Topic Previous pageReturn to chapter overviewNext page

Toolbar

n/a

Menu

Orca3D > Hull Design > Export Curves

Command

OrcaExportCurves

 

Orca3D can export Section curves to these formats:

 

IDF: IMSA Definition Format--The IDF specification allows for a number of different types of entities (sections, points, surfaces, meshes, etc.). This interface exports only sections as polylines. See below for the IDF specification for Sections.

 

PIAS: This interface exports stations only in a format suitable for use in the SARC Pias software. It is a very simple format that may be of use in other programs as well:

       -Number of Curves

               -Longitudinal Location of the curve

                       -Number of points in the curve

                       -Half Breadth, Height, Breakpoint Indicator

               -Next curve...

 

To export in either format, select the curves to be exported, and then select Export Curves from the Orca3D > Hull Design menu. In the Export Filename dialog, select the file type, enter a file name, and click on Save. A dialog will be shown that allows for controlling the smoothness of the curves:

 

The values on these two dialogs are defined as follows:

Maximum Angle

Maximum angle (in radians) between unit tangents at adjacent vertices.

Chord Height

Maximum permitted value of (distance chord midpoint to curve) / (length of chord)

Maximum Aspect Ratio

If  < 1.0, the parameter is ignored. If 1 <= Maximum Aspect Ratio < sqrt(2), it is treated as if Maximum Aspect Ratio = sqrt(2). This parameter controls the maximum permitted value of (length of longest chord) / (length of shortest chord)

Tolerance

If Tolerance = 0, the parameter is ignored. This parameter controls the maximum permitted value of the distance from the curve to the polyline.

Segment Count

If non-zero, the curve will be broken into this number of equally spaced chords

Minimum Segment Length

This parameter controls the minimum permitted edge length.

Maximum Segment Length

This parameter controls the maximum permitted edge length.

 

 

 



INTERFACE DEFINITION FILE (.IDF)

 

The IMSA IDF is intended to be a neutral file format for exchange of hull description data between marine programs, without the generality or complexity of standards such as IGES and DXF, and without the specific traits of a particular program's native format.

The file is designed to be easily human-readable. Compactness is sometimes sacrificed for this goal.

 

GENERAL FORM
 

$IDF

3.03

$ENTITY

entity type

$VESSEL NAME

identifier for this vessel

$DATA SOURCE

name of program that wrote the file

$DATE

date

$TIME

time

$UNITS

units

$COORDINATE SYSTEM

coordinates of a point one unit forward,starboard,down ("coordinate gnomon")

e.g. for FAST YACHT 1,1,1

$COMMENTS

comments

comments

$GEOMETRY

(data format specific to geometry type from here down)

$END ENTITY
 

Current Entity Types (only the Sections entity is currently supported by Orca3D, and the following specification is only for this entity type):
 

Entity Type

Description

SECTIONS

Sectional Data (Stations, Buttocks, Wls, 3d curves)

MESH

Surface Mesh data

NURBS

NURBS Surface data

HYDRO

Hull Parameter data

AREA

Sectional Area Data

General Comments

This standard contains only one interface file. This file can contain one or more entities, where each entity is a specific data type (e.g. hull sectional data, NURBS surface data, etc.). This avoids having many different files, and allows new entities to be added as necessary. It also means that one file can contain different types of data for a single ship (sectional data, surface data, etc.), thus avoiding many files describing the same ship.

The file will be a simple ASCII file, so that it will be transportable across different hardware platforms, as well as being easily human-readable. While this does not result in the most compact format, it does result in a format that is easy to produce, read, add to, and modify.

Data for each line item are to be separated by commas. Comments may be added on any line following an exclamation mark (!). End of line sequence is to be appropriate to the operating system. Text strings may be up to 79 characters long, and are limited to ASCII characters 1 through 127.
 

Units

Units must be specified as either: SI or User Defined. If User Defined, then the following lines must be given:

# of user units/meter

# of user units/square meter

# of user units/cubic meter

# of user units/kg

Some entities may not require all of the conversion factors, and the entity's definition will specify which should be included.
 

Coordinate System

Since different programs use different coordinate systems (e.g. some have positive X aft, some have positive X forward, some use Z for the longitudinal coordinate, etc.), the coordinates of a fixed point in space is required. This point is one unit forward of the origin, one unit to starboard, and one unit down from the origin. Then, as data is read in from the file, by multiplying the data by the given vector and by your own vector, the sign will be correct. All data in the formats is given in the order longitudinal, athwartships, and height. Not all entities will have a coordinate system associated with them. If not, the entity definition will leave this section out.
 

Data Tags

Data tags (e.g. $ENTITY), while not absolutely required in a fixed format file, make the file easily human-readable, and can simplify the computer-reading process. Import programs that are searching for a particular ENTITY type, can search the file for the string "$ENTITY", and then read the next line to see if the type is correct, and go on from there.

Data tags (items preceded with $) must have the $ in column 1, i.e. no white space is allowed before a data tag. Leading white space (tabs, spaces) is allowed on lines containing data. Blank lines are allowed between data and the next data tag.

Any data that is shown in the entity definitions is required; if not known, dummy data should be substituted.

Where entities allow for more than one body or surface, it is subdivided into parts (each part may represent a body or surface, or a group of bodies).

Entity #1: Sectional Data (SECTIONS)
Note: Indenting is for clarity only; not used in actual data file.

 
 

$IDF

3.01

$ENTITY

SECTIONS

$VESSEL NAME

Identifier for this vessel

$DATA SOURCE

program that wrote the file

$DATE

mm/dd/yy

$TIME

hh:mm:ss

$UNITS

This line must be either SI or User Defined

If User Defined, then the following line(s) must be specified:

# of user units/meter

$COORDINATE SYSTEM

coordinates of a point one unit forward,starboard,down ("coordinate gnomon")

e.g. for FAST YACHT 1,1,1

$COMMENTS

This is a comment about the ship about to be described. Can be any # of 79 character lines.

$GEOMETRY

n (number of parts or bodies)

part 1

.

.

part n

where each part format is:

$PART

part name

m (number of curves)

curve 1

.

.

curve m

where each curve format is:

$CURVE

curve name

Curve type (station, buttock, waterline, cant, incline, diagonal) diagonal, general plane, three-D)

j=integer number of points on curve

point 1

.

.

point j

where points are coordinate triplets (long'l, trans ,vert), breakpoint indicator (unknown, fair, knuckle)

for example: 10.15, 3.25, 1.50, fair

$END ENTITY