API
API
API
API Reference
Version 10.2
Siemens PLM Web: Customer Support Phone: Web: (714) 952-5444, (800) 955-0000 (In US & Canada) http://support.ugs.com http://www.femap.com
The following copyright refers only to the bmp2raster.exe executable distributed with FEMAP: NeuQuant Neural-Net Quantization Algorithm Copyright (c) 1994 Anthony Dekker NEUQUANT Neural-Net quantization algorithm by Anthony Dekker, 1994. See "Kohonen neural networks for optimal colour quantization" in "Network: Computation in Neural Systems" Vol. 5 (1994) pp 351-367 for a discussion of the algorithm. See also http://members.ozemail.com.au/~dekker/NEUQUANT.HTML Any party obtaining a copy of these files from the author, directly or indirectly, is granted, free of charge, a full and unrestricted irrevocable, world-wide, paid up, royalty-free, nonexclusive right and license to deal in this software and documentation files (the "Software"), including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons who receive copies from any such party to do so, with the only requirement being that this copyright notice remain intact.
Conventions
This manual uses different fonts to highlight command names or input that you must type. Shows text that you should type. Shows a command name or text that you will see in a dialog box.
a:setup
OK, Cancel
Throughout this manual, you will see references to Windows. Windows refers to Microsoft Windows XP, Windows Vista, and Windows 7 (32-bit and 64-bit versions). You will need one of these operating environments to run FEMAP for the PC. This manual assumes that you are familiar with the general use of the operating environment. If you are not, you can refer to the Windows Users Guide for additional assistance. Similarly, throughout the manual all references to FEMAP, refer to the latest version of our software.
File, Preferences - Views tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 File, Preferences - Render tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 File, Preferences - User Interface tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 File, Preferences - Database tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 File, Preferences - Geometry/Model tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 File, Preferences - Interfaces tab. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 File, Preferences - Library/Startup tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 File, Preferences - Color tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 File, Preferences - Spaceball tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 Global Integer Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Global Real Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 Global Boolean Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 Global String Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117 Entity Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 FEMAP Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 File Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 File Open/Exit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 feFileNew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 feFileOpen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 feFileClose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 feFileExit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 File Save. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 feFileSave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 feFileSaveAs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 feFileTimedSave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159 Import Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 feFileReadAcisOpt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 feFileReadAcis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 feFileReadCatia. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 feFileReadCatiaV5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 feFileReadDxf. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 feFileReadIdeas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 feFileReadIgesAdv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 feFileReadIges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171 feFileReadParasolidOpt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 feFileReadParasolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 feFileReadProe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 feFileReadSolidEdge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 feFileReadStepOpt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 feFileReadStep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180 feFileReadStl. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 feFileReadUg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 Import Analysis Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 feFileReadAbaqus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 feFileReadAnsys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 feFileReadDyna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 feFileReadMarc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 feFileReadNastran. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 feFileReadPatran. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 Import Analysis Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 feFileReadAbaqusResults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 feFileReadAnsysResults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 feFileReadDynaResults. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 feFileReadMarcResults. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 feFileReadNastranResults. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 Import/Export Neutral File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 feFileReadNeutral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
feFileReadNeutral2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileReadNeutral3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteNeutral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteNeutral2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Export Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteAcis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteIges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteParasolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteStep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteStl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteVrml . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Export Analysis Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteAbaqus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteAnsys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteDyna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteMarc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileWriteNastran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Notes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feNotesGet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feNotesPut. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Print and Copy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePageSetupSave. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePageSetupReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePrint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePrint2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePictureCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePictureCopy2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePictureSave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePictureSave2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePictureReplay. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileMessageCopy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileMessageSave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileMessageSelect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileMessageLineNumber. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rebuild and Preferences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileRebuild. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePreferencesSave. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFilePreferencesReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRunIOTest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tool Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feToolUnitConvertFactors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feToolUnitConvert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVarPut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVarGet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVarEval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLayerPut. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLayerGet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feTextPut. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feTextMultiPut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feTextGet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Measure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureDistance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureDistanceToPlane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
194 194 196 196 198 198 199 200 201 202 203 204 204 205 206 207 208 209 209 210 211 211 212 213 214 215 216 217 218 219 220 221 222 223 224 224 225 226 227 228 229 229 230 231 231 232 233 234 234 235 236 236 238 240 242 242 243
feMeasureDistanceBetweenNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . eMeasureDistanceBetweenLines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureAngle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureAngleBetweenNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureSurfaceArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureSolidMassProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureMeshMassProp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureSurfSectionProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeasureMeshSectionProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckCoincidentNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckCoincidentNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckCoincidentPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckCoincidentCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckPlanarNodes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckCoincidentElem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckElemFixup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckElemDistortion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckElemDistortion2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetElemDistortion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetElemDistortion2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckElemNormal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckConstraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckCoincidentLoads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCheckSumForces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Geometry Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLinePoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLineHorzVert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLineAtAngle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLineParallel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLineMidline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLinePointTangent. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLine2Tangent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLineRectangle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLinePointIDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Arcs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feArcCenterStartEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feArcRadiusStartEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feArcAngleStartEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feArcAngleCenterStart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feArcChordCenterStart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feArcPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feArcCenterPoints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feArcTangentStartEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Circles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircleRadius. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircleDiameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircleCenter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircle2Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircleConcentric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircle3Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircleCenterPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircleCenterTangent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCircleTangentTangent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Splines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
244 245 246 247 248 249 250 251 253 254 255 255 257 258 260 261 262 263 264 266 268 269 270 271 272 273 274 275 275 276 277 278 279 280 281 282 283 284 284 285 286 287 288 289 290 291 292 292 293 294 295 296 297 298 299 300 301
feSplinePoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSplineTangent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSplineEllipse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSplineParabola . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSplineHyperbola . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSplineBlend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curves from Surfaces Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveUpdateSurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveIntersectSolids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveProjectOntoSolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveProjectOntoSurfaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveParametricOnSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveSlice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveOffsetCurveWasher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveSplitPointToPoint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveSplitPointToEdge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveSplitEdgeToEdge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curve Modification Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveTrim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveExtend . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveBreak . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveJoin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveFillet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCurveChamfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feBoundaryFromPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feBoundaryFromCurves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feBoundaryFromSurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feBoundaryAddSurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feBoundaryUpdateSurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceCorners. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceEdgeCurves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceAlignedCurves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceRuled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceExtrude. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceRevolve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceSweep. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceNormalDeviation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceConvert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceNonManifoldAdd. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceRecoverManifold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceRemoveHole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Midsurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceMidSingle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceMidAuto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceMidAttrib . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceTrimToSolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSurfaceTrimWithCurves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Solids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidPrimitive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidExtrude . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidRevolve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidExplode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidStitch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidStitchNoCleanup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidFillet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
301 303 304 305 306 307 308 308 309 310 311 312 313 314 315 316 317 318 318 319 320 321 322 323 324 324 325 326 327 328 329 329 330 331 333 334 335 336 337 338 339 340 341 342 342 343 344 345 346 347 347 349 350 351 352 353 354
feSolidChamfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidAdd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidRemove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidCommon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidEmbed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidIntersect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidShell. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidSlice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidSliceMatch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidSliceAlongFace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidEmbedFace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidCleanup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidCleanupAdvanced . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSolidRemoveFace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Geometry and Mesh Generation Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGenerateCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGenerateRadialCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGenerateScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGenerateRotate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGenerateReflect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Generating Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feConnectAuto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feConnectAuto2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Model Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Model Load Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLoadCombine. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Model Constraint Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feBCCombine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Model Output Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputProcess . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputProcessCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputProcessMerge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputProcessLinearCombination. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputProcessRSSCombination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputProcessConvert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputProcessEnvelope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputProcessErrorEstimate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputFromLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputTransform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputCalculate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputConvertV92VectorID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feOutputForceBalance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Meshing Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mesh Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSizePoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSizeCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSizeSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSizeSolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshAttrPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshAttrCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshAttrSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshAttrSolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshApproachSurface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Meshing Geometry. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshCurve. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
355 356 357 358 359 360 361 362 363 364 365 366 367 369 370 370 372 373 374 375 377 378 378 378 382 382 382 383 383 384 384 386 387 388 389 390 391 393 394 395 397 398 399 400 401 401 402 404 406 408 409 411 412 413 414 414 416
feMeshSurface2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSurface - obsolete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSurfaceByAttributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshTetSolid. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshHexSolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshHexSolidFromElement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Other Meshing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshBetween. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshClosestLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshCoincidentLink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshUnzip. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshTransition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshRemesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshConvertFacets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshCleanupSlivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshEdgeRemoval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshBuildRemeshRegions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshEditRemeshRegions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshRemeshRegions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshEdgeMembers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSmooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshExtrudeElem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshExtrudeCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshRevolveElem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshRevolveCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSweepElem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshSweepCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Modification Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feProjectOntoCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feProjectOntoSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feProjectOntoVector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feProjectAlongVector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feProjectOntoPlane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feProjectOntoSolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Move, Rotate and Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMoveTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMoveBy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMoveOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRotateTo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRotateBy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAlignTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feScale. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Color and Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyTransparency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Renumbering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRenumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRenumberOpt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Associativity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAutoMeshAssociativity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshAttach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshAttachNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feMeshDetach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Other Updates. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyDefCSys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
418 420 422 423 425 427 429 429 431 432 433 434 437 439 440 441 442 443 444 446 447 448 450 451 452 453 454 456 457 457 458 459 460 461 462 463 463 464 465 466 467 468 469 470 470 471 472 473 473 474 476 476 477 478 479 480 480
feModifyOutCSys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyPermBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifySplineOrder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifySplineKnots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyReverseCurve. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyNoMergeCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifySurfaceDivisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifySolidFacetting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifySuperelementID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyLoadPhase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Element Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyElemPropID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyPropMatlID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyMaterialAngle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyElemReverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyElemRelease. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyElemOrder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyMidside . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyFormulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifySplitQuads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyOffsets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyOffsetsToRefPt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyOrient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyElemType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feModifyBeamWarping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Delete Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feDeleteAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feDelete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feDeleteMesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feDeleteLoads. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feDeleteConstraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feDeleteOutput . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View, Window and Visibility Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feViewVisible (or feWindowVisible) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feViewRedraw (or feWindowRedraw) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feViewRegenerate (or feWindowRegenerate) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feViewAllViews. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feViewShow (or feWindowShow) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feViewTile (or feWindowTile) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feWindowTileHorz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feViewCascade (or feWindowCascade). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feWindowMinimize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feWindowMaximize. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feWindowRestore. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feWindowSetRect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feWindowTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feEntityVisibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppUpdateModelBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Group Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupEvaluate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupBoolean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupCombine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupGenerate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupGenSolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupGenProp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupGenMatl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupGenElemType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
481 482 483 484 485 486 487 488 489 490 491 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536
feGroupPeel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGroupMoveToLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Free Edge and Free Face Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feElementFreeEdge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feElementFreeFace. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Standard Dialog Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Coordinate Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordPick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordPickByMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordFromWorkplane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordToWorkplane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordIntersectCurves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordIntersectLines. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordOntoCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordAlongCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordCurveMidpoint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordCurveCenter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordOntoSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordInSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordSurfaceIntersect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordOnPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordOnNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordTransform. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordArrayTransform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordArrayTransform2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordColinear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordToDirCos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordRotate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordOntoPlane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordOntoLine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordPlaneIntersect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feCoordVectorPlaneIntersect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRotationTransform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRotationToDirCos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRotationFromDirCos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vector Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorTransform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorFromBeam. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorToBeam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorCrossPoduct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorDotProduct . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorPerpendicular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorAngle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorAngleAxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorPlaneIntersect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorUnit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorPick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorPickByMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorAxis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorTangentToCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorNormalToSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorNormalToView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feVectorAxisOfSurface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Plane Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlanePick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlanePickByMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
537 538 539 540 541 542 543 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 589 590
fePlaneLocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlaneNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlanePoints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlaneBisect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlaneCSys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlaneSurfaceNormal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlaneCurveNormal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . fePlaneViewAlign. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Entity Selection Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selection Dialog Boxes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSelectOutput. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetElementFaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetElementEdges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Other Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetReal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetInt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppMessageBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppColorPalette. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feScreenPctPick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . User Interface Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Model Activation and Management. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppGetModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppGetModelName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppSetModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppSetModelByName. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppCountModels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppGetAllModels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppModelContents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppModelDefragment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Window Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppManageToolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppManagePanes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppUpdatePanes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppManageStatusBar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppManageGraphicsTabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppGetActiveView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppSetActiveView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppGetAllViews . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Toolbar and Menu Customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetUserCommands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAddUserCommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feDeleteUserCommand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetToolbars . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAddToolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAddToolbarSubmenu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAddToolbarSubmenuSubmenu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feDeleteToolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feResetToolbar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSetToolbarVisible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetMenuCommands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetMenuCommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetToolbarCommands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetToolbarSubCommands. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGetToolbarCommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAddToolbarCommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAddToolbarSubmenuCommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
591 592 593 594 595 596 597 598 599 599 600 603 604 605 605 606 607 608 609 610 611 611 612 613 614 615 616 617 618 619 619 620 621 622 623 624 624 625 626 627 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643
feAddToolbarUserCommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAddToolbarSubmenuUserCommand. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSetToolbarCommandVisible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSetToolbarSeparator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSetToolbarCommandTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSetToolbarCommandBitmap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feSaveToolbarLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLoadToolbarLayout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Embedding Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppRegisterAddIn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppRegisterAddInPane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppRegisterAddInPaneWithFrame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppEmbed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppBringToTop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppPosition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppShowWindow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppVisible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppRegisterMessageHandler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppEventCallback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Locking FEMAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppLock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppUnlock. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppLockExit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppUnlockExit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppLockModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppUnlockModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppLockDraw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppUnlockDraw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Status Bar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppStatusRedraw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppStatusShow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppStatusUpdate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Message Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppMessage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppMessageStartListing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppMessageEndListing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Real Number Text Formatting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFormatReal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFormatReal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Other Utilities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLicenseExpiration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLicenseMethod. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feLicenseIsAvailable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feRunCommand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feAppVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . User Graphics Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Managing User Graphics Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGFXLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGFXDelete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Displaying User Graphics Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGFXSelect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGFXEnableView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feGFXReset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . File Utility Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileGetName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileExecute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . feFileProgramRun . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
644 645 646 647 648 649 650 651 652 652 653 654 655 656 657 658 659 660 661 662 662 663 664 665 666 667 668 669 670 670 671 672 673 673 674 675 676 676 677 678 678 679 680 681 682 684 685 686 688 689 689 690 691 693 694 695 696
Show . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Print. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadFile Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadFile Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadFile Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AtEOF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . JumpToEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TimeCreated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TimeWritten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TimeAccessed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Skipped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ShowStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetNoBlankLines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetNoShortLines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetTrimSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetTrimEndSpace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetTrimFront. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetUppercase. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetSkip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetSearch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetSearchString. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetSkipAfterSearch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetFormFeed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetTabSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LineInit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reparse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FixedFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetFixedFormat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetFreeFormat. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetAutoFormat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IntField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RealField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BoolField. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selector Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selector Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Selector Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ClearAll. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Count. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectCircle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectPolygon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectFreehand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Grow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Shrink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Show . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SaveGroup. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UpdateDataTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
749 750 751 751 752 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 788 788 789 789 790 791 792 793 794 795 796 797 798 799 800 801 802
AddSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetSelected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Copy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Paste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Set Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddEntitiesOnLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddSetRule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddRule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Group Selection Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddAll. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddAllExcept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddCommon. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddNewRemoveCommonSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddCoordinate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddAroundPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddAroundVector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddAroundPlane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddNodesOnGeometry. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddAllTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddAllColor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddMidsideNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsAdded . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsArrayAdded . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsSetAdded . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Select. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectIDInSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectMultiID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectOutputVectorID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RemoveRange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RemoveArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RemoveSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RemoveNotCommon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RemoveNotCommonToGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RemoveGroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RemoveInternalCurves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HasCommon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reload . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Next. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NextID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . First . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Last . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Match . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Copy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CopyToClipboard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Count. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
803 804 805 806 807 807 808 808 809 810 811 812 813 814 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860
DeleteAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToAllCurves. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToCombinedCurves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToCombinedCurvesOnly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToInternalCurves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToAllSurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToBoundarySurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToBoundarySurfacesOnly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToInternalSurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Debug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sort Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sort Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sort Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddReal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddInt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddAll. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Find . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Remove . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RemoveSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsAdded . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Next. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Current . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . First . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Last . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Count. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Select. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SortRemoveDuplicates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ConvertToBoundarySurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UserData Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UserData Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . UserData Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Get. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Put . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Next. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . First . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Last . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NextSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PrevSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NextEmptySet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PrevEmptySet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Exist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Deletable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
861 862 863 864 865 866 867 868 869 870 871 873 873 874 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 898 899 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914
Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DeleteTitle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jump . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AtEOF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Truncate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteDouble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteFloat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteLong . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteShort. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteBool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteDoubleArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteLongArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteBoolArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WriteString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadDouble. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadFloat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadLong . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadShort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadBool. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadDoubleArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadLongArray. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadBoolArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReadString. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938
CountSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974 AnalysisCase Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975 AnalysisCase Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 975 AnalysisCase Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 980 InitAnalysisCase . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 980 GetContactTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 981 PutContactTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 982 AnalysisSet and AnalysisMgr Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983 AnalysisSet (AnalysisMgr) Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 983 AnalysisSet (AnalysisMgr) Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007 InitAnalysisMgr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1007 GetText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1008 PutText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1009 GetCorrelate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1010 GetCorrelate2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011 PutCorrelate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1012 PutCorrelate2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1013 GetContactTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1014 PutContactTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1015 Case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1016 Analyze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1017 AnalyzeMultiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1018 ClearAnalysisQueue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1019 Preview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1020 BCDefinition Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1022 BCDefinition Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1022 BCDefinition Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023 PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1023 ResetNextBC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1024 NextBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1025 BCEqn Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026 BCEqn Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026 BCEqn Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1026 BCGeom Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027 BCGeom Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027 BCGeom Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029 GetSearch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1029 SetSurfSliding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1030 SetSurfNormal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1031 SetSurfDirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1032 SetCylinder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1033 BCNode Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034 BCNode Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034 BCNode Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034 Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1035 AddArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1036 BCSet Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037 BCSet Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037 BCSet Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1038 Expand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1038 Compress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1039 ResetNextBC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1040 NextBC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041 ResetNextBCDef. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1042 NextBCDef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1043 GetCombination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1044 PutCombination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1045
Connection Property Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Property Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Accessing Connection Property Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Property Array Index Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Property Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetDefaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Region Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Region Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Region Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetContactList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutContactList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetEntities. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddContact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetOutputType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetOffset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetOffset. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetRigidType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsRigidType. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Expand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Compress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsEnabled. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Connection Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsEnabled. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CSys Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CSys Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CSys Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XYPoints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curve Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curve Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Curve Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curve Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EndPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ArcCircleInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ParamToXYZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XYZToParam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tangent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartialLength. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ParamAtLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MeshParam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddMeshLoc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddMeshLocXYZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NodesAsSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ElementsAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ElementsWithFaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BoundingBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1047 1047 1047 1049 1056 1057 1058 1058 1060 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1075 1076 1077 1078 1079 1080 1080 1081 1081 1082 1082 1085 1086 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1098 1099 1100 1102 1103 1104 1105 1106
GetMeshLoc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetMeshLocXYZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsSmoothEdge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surfaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SurfacesAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Normal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsCombinedCurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetCombinedCurves. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CombinedCurvesAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CombineCurves. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Facets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartialLengthXYZ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PartialLengthNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsStraight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsNonManifold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsSmooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TangentAtEnds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CurvatureAcrossEdge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ClosestPointToSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Surface Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Surface Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Surface Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetDataSurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutDataSurf. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarAlongCoord. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarBetween2Pts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarBetween4Pts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarBetween8Pts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarParametric2Pt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarParametric4Pt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarOutputMap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarMeshSurface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarSpatialUVtable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarSpatialXYZTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarArbitrary3DCoord. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VarEquation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetCellValue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetCellValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetCellEquation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetColumnTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetColumnValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetRowTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetRowTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetRowValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetRowValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetPageTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetPageTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetPageValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetPageValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetColumTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetColumValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetCellBlank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetDataSurfInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetPageInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Resize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evaluate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1127 1127 1128 1128 1129 1130 1131 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163
GetDataSurfType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Element Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Element Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Accessing Element Nodes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Element Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAllArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAllArray. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetNodeList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutNodeList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ClearNodeList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Prop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Matl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetCentroid. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetFaceCentroid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetFaceNormal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetFaceArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetFaceNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetEdgeNodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsParabolic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Thickness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Inertia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetMinMaxEdgeLength . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Function Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetFunctionList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutFunctionList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetValue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXArrow Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXArrow Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXArrow Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAllArray. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutCoordArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DeleteAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXLine Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXLine Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXLine Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAllArray. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutCoordArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DeleteAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXPoint Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXPoint Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXPoint Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAllArray. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutCoordArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DeleteAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXQuad4 Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXQuad4 Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXQuad4 Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAllArray. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutCoordNormalArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1166 1167 1167 1169 1170 1170 1174 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1193 1193 1194 1195 1196 1198 1198 1199 1199 1200 1201 1202 1204 1204 1205 1205 1206 1207 1208 1210 1210 1211 1211 1212 1213 1214 1216 1216 1217 1217 1218 1219
PutCoordArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DeleteAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXTria3 Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXTria3 Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GFXTria3 Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAllArray. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutCoordNormalArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutCoordArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DeleteAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GlobalPly Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GlobalPly Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GlobalPly Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Group Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Group Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Group Range Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Group List Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Group Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RangeReset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RangeGetAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RangeNext. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RangeAdd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RangeDelete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RangeDeleteAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetAdd. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetAddOpt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectModel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectMesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectContact . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SelectAllOnLayer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ReferencedGroups. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layer Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layer Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layer Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layup Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layup Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layup Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddPly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InsertPly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetPly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetAllPly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetPly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAllPly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DeletePly. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Compute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Compute2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HasGlobalPly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HasMaterial. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HasFullGlobalPly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadBolt Object . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadBolt Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadBolt Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1220 1221 1222 1222 1223 1223 1224 1225 1226 1227 1228 1228 1228 1229 1229 1231 1233 1234 1234 1236 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1252 1252 1254 1254 1256 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1270 1270 1270 1271
LoadDefinition Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadDefinition Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadDefinition Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ResetNextLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NextLoad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CountLoads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsTotalLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadETemp Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadETemp Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadETemp Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadGeom Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadGeom Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadGeom Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetSearch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadGeom Load Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadMesh Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadMesh Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadMesh Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetSearch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Add . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadMesh Load Types. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadNTemp Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadNTemp Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadNTemp Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AddArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadSet Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadSet Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LoadSet Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Expand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Compress. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ResetNextLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NextLoad. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ResetNextLoadDef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NextLoadDef. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetCombination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutCombination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MapOutput Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MapObject Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MapOutput Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MapFromModelToSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MapFromModelToLocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Material Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Material Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Accessing Material Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Material Array Index Values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Material Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AutoComplete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Node Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Node Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Node Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAllArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetCoordArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1272 1272 1273 1273 1274 1275 1276 1277 1278 1278 1278 1279 1280 1280 1284 1284 1285 1287 1287 1291 1291 1292 1293 1295 1296 1296 1296 1297 1298 1298 1303 1303 1304 1305 1306 1307 1308 1309 1310 1312 1312 1313 1313 1316 1318 1318 1320 1320 1324 1324 1325 1325 1326 1326 1327 1328 1329
PutAllArray. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetClosest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Optim Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Optim Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Optim Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output Vector IDs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Output Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Corner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . X............................................................................ Y............................................................................ Z ............................................................................ GetFromSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetOutputList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetOutputListAtID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetOutputListAtSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutOutputList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InitScalarAtNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetScalarAtNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetScalarAtNodeSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutScalarAtNode. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InitVectorAtNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetVectorAtSingleNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetVectorAtNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetVectorAtNodeSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutVectorAtNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InitScalarAtElem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetScalarAtElem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetScalarAtElemSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutScalarAtElem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InitElemWithCorner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetElemWithCorner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetElemWithCornerSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutElemWithCorner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InitScalarAtBeam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutScalarAtBeam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FindMaxMin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OutputSet Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OutputSet Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OutputSet Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . OutputVectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Point Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Point Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Point Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NodesAsSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CurvesAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SurfacesAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Property Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Property Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Accessing Property Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Property Array Index Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Property Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1330 1331 1332 1332 1333 1334 1334 1336 1337 1338 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1362 1364 1366 1368 1369 1370 1371 1371 1372 1372 1373 1374 1374 1374 1375 1377 1378 1379 1380 1381 1381 1383 1384 1394
ComputeShape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ComputeStdShape. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ComputeGeneralShape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Matl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Layup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Thickness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Inertia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Report Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Report Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Report Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Solid Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Solid Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Solid Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PointsAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CurvesAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . FreeCurvesAsSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surfaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SurfacesAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MassProp. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Export . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsSolid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsSheet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsWire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsGeneral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Facets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NodesAsSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ElementsAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BoundingBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surface Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surface Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surface Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Inside. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . InsideXYZ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ParamToXYZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XYZToParam . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Area. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ApproximateArea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tangents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Normal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NormalAtXYZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ProjectOnto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Solid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BoundarySurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BoundarySurfacesAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AdjacentSurfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AdjacentSurfacesAsSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Curves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CurveLoops. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CurvesAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Points. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PointsAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1395 1397 1399 1400 1401 1402 1403 1404 1405 1405 1405 1406 1406 1407 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1423 1424 1425 1426 1427 1427 1431 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451
EndPoints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . EndPointsAsSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Planar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Cylindrical. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Spherical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Toroidal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsPlane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsCylinder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsSphere. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsCone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsTorus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsBoundingSolidRegion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Facets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NodesAsSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ElementsAsSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ElementsWithFaces. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ElementFaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BoundingBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . BoundingSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . NormalBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MaxNormalDeviation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AngleAtPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HasPole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MinRadiiOfCurvature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . RationalParamToXYZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ResetMeshAttr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Text Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGBC Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGBC Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGBC Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGCtrl Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGCtrl Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGCtrl Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGInt Objects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGInt Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGInt Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGOpt Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGOpt Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGOpt Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGReal Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGReal Object Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TMGReal Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1484 1484 1486 1487 1487 1488 1488 1489 1490 1490 1491 1491 1492 1493 1493 1494 1494 1495 1496 1496 1497 1497 1498 1499 1499 1500 1500
PutAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variable Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variable Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Variable Object Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetVarID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Evaluate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Define . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DefineReal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View Object Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View Option Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . View Object Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Initialize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GetMultiGroupList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetMultiGroupList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ClearMultiGroupList. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Redraw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Regenerate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IsLayerVisible. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SetLayerVisible. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rotate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AlignCSys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AlignVector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Align2Vector. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AlignWorkplane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AutoscaleAll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AutoscaleVisible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1501 1502 1502 1503 1503 1504 1505 1506 1507 1507 1517 1521 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536
FEMAP Events
Receiving and Processing Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Alternate Method - Event Callbacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Format of Event Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The FEMAP Events. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using FEMAP Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1537 1537 1538 1538 1539
API-31
Objects, Methods and Properties Data Types Memory Allocation Global Constants
For examples of how to use the FEMAP API, see Section 2, "Using the FEMAP API".
API-32
the underlying modeling data, these objects are very rich in property definitions. In addition, the API includes methods that are used to find, retrieve, traverse and store the entities. For a full listing of objects, see Section 5, "FEMAP Entity Objects". As an important starting point to using any of the entity objects, refer to Section 5.1, "Common Entity Properties and Methods" . It describes the properties and methods that are common to all of the objects. This information is not repeated in each of the individual objects. You should understand these options before proceeding to the detailed description of the unique capabilities of each object.
Description
From C++
Single byte, True/ False value 2-byte integer 4-byte integer 4-byte real 8-byte real character string, null terminated
API-33
This will generate a type mismatch error, because the String variable has not been initialized. If instead you use: Sub Main Dim Set Dim s = 'Full Subroutine usable in FEMAP API window
App As femap.model ' Declare App model object App = GetObject(,"femap.model") ' Instantiate App object s As String ""
rc = App.feNotesGet( 1, s ) ' Puts model notes into String s MsgBox(s) End Sub then, everything will work properly. One final difference is that the Set command is no longer used in Visual Basic .NET. Throughout this document, you will see examples that still include Set, as is required for the older Visual Basic 6. For example, Dim femap as Object Set femap = GetObject(, femap.model) If you are using Visual Basic .NET, you must simply ignore (or remove) the Set, leaving the correct syntax: Dim femap as Object femap = GetObject(, femap.model) ' Shows String s in modal dialog box
API-34
and then x can be passed directly in calls that require an array. In older languages like Visual Basic 6, where you need to manually declare the Variants, you can create it fairly easily. For example: Dim x(10) as Long Dim vx as Variant x(0) = 5 x(1) = 4 ... vx = x This will define a variant, vx, that contains all of the values assigned to the x array. This variant can then be passed through the API to FEMAP in place of the array. For any method that returns an array, you do not need to define an array variable in Basic. You simply define the variant, pass it to the API, and then reference it like an array afterward. This applies to both current and older languages. For example, Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim rc As Long Dim a(3) As Double Dim va As Variant ' Create and store some userdata Dim e As UserData Set e = App.feUserData a(0) = 1.290 a(1) = 2*a(0) a(2) = 2*a(1) va = a rc = e.WriteDoubleArray(3, va) rc = e.Put(1) ' Retrieve userdata Dim vb As Variant Dim i As Long Dim f As UserData Set f = App.feUserData rc = f.Get (1) rc = f.ReadDoubleArray ( i, vb ) ' Read Array from DB 'into Variant ' Variant to Array ' Write Variant as Array
API-35
Dim mstr As String 'Convert Doubles in Variant to Strings mstr =Str$(vb(0)) + " " + Str$(vb(1))+" "+Str$(vb(2)) MsgBox(mstr) End Sub
API-36
CComSafeArray<data_type> ldof(size); Where data_type is the type of data in the array, and size is the number of entries. You should use the following data_types to be compatible with the API::
BOOL INT4 REAL8 To create Variants, you can use: CComVariant vdir;
You can fill the Variant by simply setting it equal to the Safe Array, and then pass it to the API. Refer to Section 2.10, "Calling the API from Visual C++", for an example of using this approach.
Depending on the language that you are using to call the API, multi-dimensional arrays store data in different order. FEMAP requires data stored in these arrays to be in a specific order that is described with the individual property or method - it is up to you to properly arrange the array indices so that data is stored as needed - and this varies by language. For example, in the above array FEMAP expected to have the data arranged as follows (X1,Y1,Z1, X2,Y2,Z2, X3,Y3,Z3, X4,Y4,Z4). If you were calling the API from C or C++, the rightmost index varies first, so declaring the array as: double xyz[4][3] (in C or C++) would be appropriate. On the other hand, if you were using Basic, then the leftmost index varies first and you would have to declare the array as: Dim xyz(2,3) as double (in Basic) to get the data into the proper locations. Also notice in Basic, that the dimensions are the values of the largest index, not the size to allocate, so the numbers decreased by 1 each.
API-37
Proper Dimensioning
To get all of the data in the proper locations, you can not over-size a multi-dimensional array except in the final dimension. In general, you will want to make your arrays just big enough to hold the data that you are using, and no larger. In some cases however, it is convenient to have one or more large arrays that simply collect data and may not be completely filled. When using multidimensional arrays however, care must be taken. In the above case, from C, when you declared the array as double xyz[4][3] (in C or C++) everything was fine and data is stored as (X1,Y1,Z1, X2,Y2,Z2, X3,Y3,Z3, X4,Y4,Z4). If however you declared the array as double xyz[4][4] (in C or C++) then data would be stored as (X1,Y1,Z1,HOLE1, X2,Y2,Z2,HOLE2, X3,Y3,Z3,HOLE3 X4,Y4,Z4,HOLE4), and you can see that the holes will move the data to the wrong locations. Similarly, if you over-dimension the first index in Basic, the same thing will happen. You can successfully over-dimension the final index however. In C, for example, double xyz[100][3] (in C or C++) would be fine, since data would be stored as (X1,Y1,Z1, X2,Y2,Z2, X3,Y3,Z3, X4,Y4,Z4, ... X100, Y100, Z100), and even if only 4 sets of X,Y,Z values were needed, they will still be in their proper locations.
Both of these properties provide access to the same data. The first (in this case dof) lets you access individual array entries, one at a time (for example, dof[2]). The second Variant property lets you access the entire array in one OLE/COM call. To access these Variant properties, you must create a Variant variable in your application, load the entire array into it (by setting it equal to the property), manipulate your local variable as needed, then put the entire array back into the FEMAP object (by setting it equal to your local Variant). Once again, in Visual Basic .NET, use the generic Object data type instead of Variant which is no longer supported.
API-38
It is not just variables that are returned from the API that you need to free. If you allocate memory for a variable and pass it to an API method, the memory will not be freed (you might still need it). It is your responsibility to free all memory for your variables.
6 7 8 9 10 16
7 8 9 10 11
4 5 6
27 28 29
API-39
FT_VOLUME FT_NODE FT_ELEM FT_CSYS FT_MATL FT_PROP FT_LOAD_DIR FT_SURF_LOAD FT_GEOM_LOAD FT_NTHERM_LOAD FT_ETHERM_LOAD FT_BC_DIR FT_BCO FT_BCO_GEOM FT_BEQ FT_ESP_TEXT FT_VIEW FT_GROUP Group Rules FGD_CSys_byDefCSys FGD_CSys_byType FGD_Point_ID FGD_Point_byDefCSys FGD_Point_onCurve FGD_Curve_ID FGD_Curve_byPoint FGD_Curve_onSurface FGD_Surface_ID FGD_Surface_byCurve FGD_Surface_onVolume
1 2 3 4 5 6 7 8 9 10 11 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 24
FT_OUT_DATA FT_REPORT FT_BOUNDARY FT_LAYER FT_MATL_TABLE FT_FUNCTION_DIR FT_FUNCTION_TABLE FT_SOLID FT_COLOR FT_OUT_CSYS FT_CONTACT FT_GRTYPE FT_AMGR_DIR FT_TMG_BCO FT_TMG_CONTROL FT_TMG_INTEGER FT_TMG_REAL FT_TMG_OPTION
FGD_Load_byPoint FGD_Load_byCurve FGD_Load_bySurface FGD_BCo_byPoint FGD_BCo_byCurve FGD_BCo_bySurface FGD_Text_byColor FGD_Point_byColor FGD_Curve_byColor FGD_Surface_byColor FGD_Volume_byColor
46 47 48 49 50 51 52 53 54 55 56
API-40
FGD_Volume_ID FGD_Volume_bySurface FGD_Text_ID FGD_Boundary_ID FGD_Boundary_byCurve FGD_Node_ID FGD_Node_byDefCSys FGD_Node_byOutCSys FGD_Node_onElem FGD_Elem_ID FGD_Elem_byMatl FGD_Elem_byProp FGD_Elem_byType FGD_Elem_byNode FGD_Matl_ID FGD_Matl_onProp FGD_Matl_onElem FGD_Matl_byType FGD_Prop_ID FGD_Prop_onElem FGD_Prop_byMatl FGD_Prop_byType FGD_Load_byNode FGD_Load_byElem FGD_BCo_ID FGD_BEq_byNode FGD_Node_atPoint FGD_Node_atCurve FGD_Node_atSurface FGD_Node_atSolid
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
FGD_Solid_byColor FGD_CSys_byColor FGD_Node_byColor FGD_Elem_byColor FGD_Prop_byColor FGD_Matl_byColor FGD_Text_byLayer FGD_Point_byLayer FGD_Curve_byLayer FGD_Surface_byLayer FGD_Volume_byLayer FGD_Solid_byLayer FGD_CSys_byLayer FGD_Node_byLayer FGD_Elem_byLayer FGD_Prop_byLayer FGD_Matl_byLayer FGD_Solid_ID FGD_Solid_byCurve FGD_Solid_bySurface FGD_Curve_onSolid FGD_Surface_onSolid FGD_Point_byProp FGD_Curve_byProp FGD_Surface_byProp FGD_Volume_byProp FGD_Solid_byProp FGD_Contact_ID FGD_Contact_byColor FGD_Contact_byLayer
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
API-41
FGD_Elem_atPoint FGD_Elem_atCurve FGD_Elem_atSurface FGD_Elem_atSolid
42 43 44 45
87 88 89
API-42
API-43
API-44
'4. Loop over all of the nodes in the model. While nd.Next Row = Row + 1 '5. Store properties for each node in successive worksheet rows. Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, 1).Value 2).Value 3).Value 4).Value 5).Value 6).Value 7).Value 8).Value = = = = = = = = nd.ID nd.layer nd.Color nd.defCSys nd.outCSys nd.x nd.y nd.z
Wend End Sub ______________________________________________________________________________ While the previous program is fairly simple, it does require calling FEMAP for each of the nodal quantities. For example, each time you reference nd.x, nd.y, or nd.z, your program must call FEMAP to retrieve that information. This approach provides the simplicity of the object-oriented approach, but does not necessarily perform as well as making just one call for multiple pieces of data. The following program does exactly the same thing as the previous one, but makes far fewer calls, and therefore performs better. ______________________________________________________________________________
Private Sub LoadNodalDataFast() '1. Attach to the model in a FEMAP session that is already running. Dim femap As Object Set femap = GetObject(, "femap.model") '2. Create a Node object. Dim nd As Object Set nd = femap.feNode '3. Dimension local variables to receive the data. Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim x As Double y As Double z As Double l As Long co As Long d As Long oc As Long e As Long rc As Long ID As Long
API-45
Dim pb As Variant '4. Make the titles in the first row of the worksheet. Row = 1 Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, 1).Value 2).Value 3).Value 4).Value 5).Value 6).Value 7).Value 8).Value = = = = = = = = "ID" "Layer" "Color" "Def CSys" "Out CSys" "X" "Y" "Z"
'5. Loop over all of the nodes in the model. ID = nd.nextID While ID < 99999999 Row = Row + 1 '6. Call the GetAll method of the Node object to retrieve all of the required properties in one call. Store the retrieved data into the worksheet. rc = nd.GetAll(ID, x, y, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, z, l, co, e, d, oc, pb) 1).Value = ID 2).Value = l 3).Value = co 4).Value = d 5).Value = oc 6).Value = x 7).Value = y 8).Value = z
'(These fields were not loaded by the first example, but show the use of the Variant data type to access array data.) Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, Worksheets(1).Cells(Row, ID = nd.nextID 9).Value = pb(0) 10).Value = pb(1) 11).Value = pb(2) 12).Value = pb(3) 13).Value = pb(4) 14).Value = pb(5)
API-46
loads data into your worksheet, where you can edit it using the tools available in Excel. When your edits are complete, this program puts the changes back into FEMAP. ______________________________________________________________________________
Private Sub UpdateNodalData() '1. Attach to the model in a FEMAP session that is already running. Dim femap As Object Set femap = GetObject(, "femap.model") '2. Create a Node object. Dim nd As Object Set nd = femap.feNode '3. Loop over all rows of the worksheet that have an ID value. Row = 2 ID = Worksheets(1).Cells(Row, 1).Value While ID > 0 '4. Retrieve the node to load all of its properties. rc = nd.Get(ID) '5. Update the properties that you have edited. nd.layer = Worksheets(1).Cells(Row, 2).Value nd.Color = Worksheets(1).Cells(Row, 3).Value nd.defCSys = Worksheets(1).Cells(Row, 4).Value nd.outCSys = Worksheets(1).Cells(Row, 5).Value nd.x = Worksheets(1).Cells(Row, 6).Value nd.y = Worksheets(1).Cells(Row, 7).Value nd.z = Worksheets(1).Cells(Row, 8).Value '6. Put the changes back into the database. rc = nd.Put(ID) '7. Go to the next row. Row = Row + 1 ID = Worksheets(1).Cells(Row, 1).Value Wend End Sub ______________________________________________________________________________ Just as before, you can also do this function with a single call approach to reduce the number of times that you reference the Node object. ______________________________________________________________________________
API-47
Private Sub UpdateNodalDataFast() '1. Attach to the model in a FEMAP session that is already running. Dim femap As Object Set femap = GetObject(, "femap.model") '2. Create a Node object. Dim nd As Object Set nd = femap.feNode '3. Dimension local variables to receive the data. Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim x As Double y As Double z As Double l As Long co As Long d As Long oc As Long e As Long rc As Long ID As Long
'4. Arrays are passed as variants. Dimension both, assign the array to the variant, and pass the variant. Dim pb As Variant Dim p(6) As Long pb = p Row = 2 ID = Worksheets(1).Cells(Row, 1).Value While ID > 0 '5. Load the local variables with worksheet values. l = Worksheets(1).Cells(Row, 2).Value co = Worksheets(1).Cells(Row, 3).Value d = Worksheets(1).Cells(Row, 4).Value oc = Worksheets(1).Cells(Row, 5).Value x = Worksheets(1).Cells(Row, 6).Value y = Worksheets(1).Cells(Row, 7).Value z = Worksheets(1).Cells(Row, 8).Value pb(0) = Worksheets(1).Cells(Row, 9).Value pb(1) = Worksheets(1).Cells(Row, 10).Value pb(2) = Worksheets(1).Cells(Row, 11).Value pb(3) = Worksheets(1).Cells(Row, 12).Value pb(4) = Worksheets(1).Cells(Row, 13).Value pb(5) = Worksheets(1).Cells(Row, 14).Value
API-48
'6. Put all data back into FEMAP with one call. rc = nd.PutAll(ID, x, y, z, l, co, e, d, oc, pb) '7. Go to the next row. Row = Row + 1 ID = Worksheets(1).Cells(Row, 1).Value Wend End Sub ______________________________________________________________________________
'4. Initialize an Output Set and store it. os.title = "My Test Set" os.value = 35.4 os.analysis = 5 os.Put (1)
API-49
'5. Initialize the Output object to create nodal vector output. ' (In this case, you will create a total vector and x, y and z component vectors.) rc = o.InitVectorAtNode(1, 300000, 300001, 300002, 300003, _ "Displacement", 1, True) Dim ID(100000) As Long Dim x(100000) As Double Dim y(100000) As Double Dim z(100000) As Double Dim xV As Variant Dim yV As Variant Dim zV As Variant Dim idV As Variant '6. Make up some output values for 100,000 nodes. ' (Replace this section with some code that creates or reads real results values.) For i = 0 To 99999 ID(i) = i + 1 x(i) = 0.001 * i y(i) = 0# z(i) = 0.02 * Sin(360# / 99999# * i * 3.14 / 180#) Next i xV = x yV = y zV = z idV = ID '7. Save the displacement output in the database. rc = o.PutVectorAtNode(100000, idV, xV, yV, zV) rc = o.Put(-1) '8. Make some elemental stress output. Reinitialize the output object. rc = o.InitElemWithCorner(1, 100, 101, 102, 103, 104, 0, 0, 0, 0, _ "Stress", 2, True) Dim c(100000) As Double Dim c1(100000) As Double Dim c2(100000) As Double Dim c3(100000) As Double Dim c4(100000) As Double Dim cV As Variant Dim c1V As Variant Dim c2V As Variant Dim c3V As Variant Dim c4V As Variant
API-50
'9. Make output for 90,000 elements. Make both the center and corner results. For i = 0 To ID(i) = i + c(i) = i c1(i) = i + c2(i) = i + c3(i) = i c4(i) = i Next i cV = c c1V = c1 c2V = c2 c3V = c3 c4V = c4 89999 1 0.1 0.2 0.2 0.1
'10. Store the elemental results in the database. rc = o.PutElemWithCorner(90000, 4, idV, cV,c1V, c2V, _ c3V, c4V, c4V, c4V, c4V, c4V) rc = o.Put(-1) End Sub ______________________________________________________________________________
API-51
'3. Create a Node object. Dim nd As Object Set nd = App.feNode Dim rc As Long '4. Set up field widths: 10 fields, 8 characters wide. Dim w(10) As Long For i = 0 To 9 w(i) = 8 Next i Dim wVar As Variant wVar = w '5. Prepare to read the file. Read only GRID lines in fixed or free format. rc rc rc rc = = = = f.SetSearchString("GRID", "") f.FixedFormat(10, wVar) f.SetAutoFormat() f.Open("d:\temp\grid.nas", 100)
'6. Begin reading. Do rc = f.Read() '7. Put the data into the nodes. nd.x = f.RealField(4, 0#) nd.y = f.RealField(5, 0#) nd.z = f.RealField(6, 0#) nd.defCSys = f.IntField(3, 0) nd.outCSys = f.IntField(7, 0) '8. Save the nodes. rc = nd.Put(f.IntField(2, 0)) '9. Keep reading until you get to the end of the file. Loop Until f.AtEOF() rc = f.Close() End Sub ______________________________________________________________________________
API-52
format and order of the data is up to you. The only restriction is that your code must remember what format you used when writing the data, or you will be unable to read it later. The following example shows writing a number of data types to a UserData object. ______________________________________________________________________________ Dim App As femap.object 'For use by all local subroutines
'1. Simple driver to load and then retrieve userData Sub Main() '2. Attach to the model in a FEMAP session that is already running. Set App = GetObject(, "femap.model") Call SaveUserData() Call LoadUserData() End Sub
Private Sub SaveUserData() '3. Create the UserData object. Dim d As Object Set d = App.feUserData() Dim Dim Dim Dim Dim Dim a(5) As Double va As Variant rc As Long b(4) As Boolean vb As Variant p As Long
'4. Start writing data to the UserData storage object. d.WriteDouble (8.3) d.WriteDouble (76.34) d.WriteLong (-345) d.writestring ("This is my text") d.WriteDouble (3457000000000#) a(0) = 0.1234 a(1) = 0.5432 a(2) = 0.9876 a(3) = 0.234 a(4) = 13.44 va = a rc = d.WriteDoubleArray(5, va)
API-53
b(0) b(1) b(2) b(3) b(4) vb = rc = = True = False = True = True = 3 b d.WriteBoolArray(5, vb)
'5. Assign a title and store object. d.Title = "ABCProduct" d.Put (1) End Sub '______________________________________________________________________________ Private Sub LoadUserData() ' Reloads and displays data '6. Create the UserData object. Dim e As Object Set e = App.feUserData()
'7. Reload the UserData object. e.Get (1) MsgBox (e.Title) Dim Dim Dim Dim Dim x As Double i As Long s As String vb As Variant cc As Variant
'8. Start reading and displaying the data. rc = e.ReadDouble(x) MsgBox (Str$(x)) rc = e.ReadDouble(x) MsgBox (Str$(x)) rc = e.ReadLong(i) MsgBox (Str$(i)) rc = e.readstring(s) MsgBox (s) rc = e.ReadDouble(x) MsgBox (Str$(x)) rc = e.ReadDoubleArray(i, vb) MsgBox (Str$(i)) MsgBox (Str$(vb(0)))
API-54
MsgBox (Str$(vb(4))) rc = e.ReadBoolArray(i, cc) MsgBox (Str$(i)) MsgBox (Str$(cc(0))) MsgBox (Str$(cc(1))) MsgBox (Str$(cc(2))) MsgBox (Str$(cc(3))) MsgBox (Str$(cc(4))) End Sub ______________________________________________________________________________
Dim vDOF As Variant Dim vNodeArray As Variant Dim vDum As Variant vDOF = DOF nodeX = 0# nodeY = 0# nodeZ = 0#
API-55
'2. Attach to FEMAP. Set App = GetObject(, "femap.model") '3. Ask the user to select nodes for the rigid element. Set nodeSet = App.feSet() rc = nodeSet.Select(7, True, "Select Nodes for Rigid Spider") If rc = -1 Then '4. Identify how many nodes were selected. nodeCount = nodeSet.Count() If nodeCount > 0 Then '5. Make some local arrays to hold the data that was collected. ReDim ReDim ReDim ReDim nodeArray(nodeCount) faceArray(nodeCount) Weight(nodeCount) As DOFArray(nodeCount * As Long As Long Long 6) As Long
vDOF = DOFArray vWeight = Weight vfaceArray = faceArray Dim passCount As Long passCount = 0 '6. Walk the nodes. Set fN = App.feNode() rc = nodeSet.Reset() nodeID = nodeSet.Next() '7. Store the IDs. Do While nodeID <> 0 nodeArray(passCount) = nodeID passCount = passCount + 1 rc = fN.Get(nodeID) nodeX = nodeX + fN.x nodeY = nodeY + fN.y nodeZ = nodeZ + fN.z nodeID = nodeSet.Next() Loop '8. Compute the centroid and create the Node at the centroid. Set feNode = App.feNode()
API-56
vNodeArray = nodeArray nodeID = feNode.NextEmptyID feNode.x = nodeX / nodeCount feNode.y = nodeY / nodeCount feNode.z = nodeZ / nodeCount '9. Store the node. rc = feNode.Put(nodeID) If rc = -1 Then 'return code FE_OK '10. Create the element. Set feElem = App.feElem() elemID = feElem.NextEmptyID feElem.Type = 29 'Rigid feElem.topology = 13 'Rigid feElem.node(0) = nodeID 'Independent Node feElem.Release(0, 0) = 1 feElem.Release(0, 1) = 1 feElem.Release(0, 2) = 1 vDum = nodeArray rc = feElem.PutNodeList(0, nodeCount, vNodeArray, _ vfaceArray, vWeight, vDOF ) '11. Store the element. rc = feElem.Put(elemID) End If End If End If End Sub
______________________________________________________________________________
API-57
______________________________________________________________________________ Sub Main Dim App As Object Set App = GetObject(, "femap.model") Dim Dim Set Dim Set Dim Set Dim Set Dim Set Dim Set rc as Integer BCSet As Object BCSet = App.feBCSet BC As Object BC = App.feBCNode LdSet As Object LdSet = App.feLoadSet Ld As Object Ld = App.feLoadMesh Nt As Object Nt = App.feLoadNTemp Et As Object Et = App.feLoadETemp
'1. Do the Constraints. While (BCSet.Next()) BC.setID = BCSet.ID BC.ID = -1 While (BC.Next()) If (BC.expanded) Then BC.expanded = False BC.Put (BC.ID) End If Wend Wend '2. Do the Loads. While (LdSet.Next()) '3. Mesh-based loads. Ld.setID = LdSet.ID Ld.ID = -1 While (Ld.Next()) If (Ld.expanded) Then Ld.expanded = False Ld.Put (Ld.ID) End If Wend
API-58
'4. Elemental Temps. Et.setID = LdSet.ID Et.ID = -1 While (Et.Next()) If (Et.expanded) Then Et.expanded = False Et.Put (Et.ID) End If Wend '5. Nodal Temps.
Nt.setID = LdSet.ID Nt.ID = -1 While (Nt.Next()) If (Nt.expanded) Then Nt.expanded = False Nt.Put (Nt.ID) End If Wend Wend End Sub
______________________________________________________________________________
API-59
'3. Use the feOutputSet method of the FEMAP Application object to create OutputSet objects. Dim outset As Object Set outset = femap.feOutputSet '4. Use the feOutput method of the FEMAP Application object to create Output objects. Dim outdata As Object Set outdata = femap.feOutput Dim Dim Dim Dim Dim v setID def_vecID Nodal vec_title As As As As As Long Long Long Boolean String
'5. Use the feAppGetActiveView User Interface Method to return Active View of the ' active Model. ret = femap.feAppGetActiveView(v) '6. Use the Get property to retrieve the record of the FEMAP view number that is entered. ' In this case, you are getting the active view. View.Get (v) '7. Use this If statement to make sure that an XY display is not being displayed. If (View.Mode < 6) Then '8. Use the Deformed property to return the deformed style: 0=Off, 1=Deformed, 2=Animate.... ' This If statement makes sure that you are using a deformed display. If Not (View.Deformed = 0) Then '9. Use the Outputset property to return the ID of the active output set. If (View.outputset > 0) Then setID = View.outputset '10. Use the DeformData property to return the ID of the vector selected for the deformed display. def_vecID = View.DeformData '11. Set the outset.Active property to ensure the set you wish to retrieve is active then use the two ' commands below to retrieve information about the selected output set and vector (the vector ' of the active output set that is being used in the deformed display). ret = outset.Get(setID) outset.Active = setID ret = outdata.Get(def_vecID) End If End If End If
API-60
Nodal = False '12. Use the Locate on method to return how the output is computed and stored. Nodal = 7, ' so this checks if the deformed output vector is nodal or elemental. If (outdata.Location = 7) Then Nodal = True End If '13. Get the title of the output vector. vec_title = outdata.title ******************************************************************** Next, check to see if a group is being viewed. If so, you will select only those nodes. '14. Use the feGroup method of the FEMAP Application object to create Group objects. Dim gr As Object Set gr = femap.feGroup '15. Use this object as the List method of gr, and set it to be a list of the nodes in the group. The Group List method returns a list of the selected entities. In this case, you want a list of nodes, so you will enter 7 for the list method. Dim Dim Dim Dim Dim Dim s1 As Object view_Group As sID As x As y As z As Long Long Long Long Long
'16. Use the Group property to return the ID of the group being viewed. view_Group = View.Group '17. Check to see if the active group is being displayed. (If so, you will next fill s1 with the entities in the active group.) If (view_Group = -1) Then '18. Use the Info_ActiveID method to return the id of the active entity, of entity type. In this case, you want the active group, so 24 is used for group. view_Group = (femap.Info_ActiveID(24)) '19. Retrieve the record of the active group. gr.Get (view_Group) If (Nodal) Then
API-61
'20. Make s1 a list of nodes in the group. Give sID the ID of the next entity in the list s1. Set s1 = gr.List(7) sID = s1.Next Else '21. Make s1 a list of elements in the group. Set s1 = gr.List(8) sID = s1.Next End If '22. If another group is being displayed, fill s1 with the entities in the other group. ElseIf (view_Group > 0) Then gr.Get (view_Group) If (Nodal) Then Set s1 = gr.List(7) '23. Give sID the ID of the next entity in the list s1. sID = s1.Next Else Set s1 = gr.List(8) sID = s1.Next End If '24. If a group isn't being displayed, then put all of the entities in the s1 list. ElseIf (view_Group = 0) Then Set s1 = femap.feSet If (Nodal) Then '25. Use the Adall property to make s1 a list of all of the nodes in the model. s1.AddAll (7) '26. Give sID the ID of the next entity in the list s1. sID = s1.Next Else s1.AddAll (8) sID = s1.Next End If End If ********************************************************************
API-62
'Next, fill the Worksheet Sheet1 with the node IDs, nodal coordinates, and values. If the data ' is elemental, use instead the element IDs and values. '27. Use the feNode method of the FEMAP Application object to create Node objects. Dim Node As Object Set Node = femap.feNode '28. Use the feElement method of the FEMAP Application object to create Element objects. Dim Element As Object Set Element = femap.feElem Dim Counter As Long '29. Turn off Excels screen updating so that the data from FEMAP will be retrieved faster. Application.ScreenUpdating = False '30. Activate the current Worksheet from within Excel. Worksheets("Sheet1").Activate '31. Clear the selected cell of any previous values or equations. Worksheets("Sheet1").Cells(1, 1).ClearContents If Not (Nodal) Then '32. Name the column 1 header Elements if the data is elemental, or Nodes is the data is nodal. Worksheets("Sheet1").Cells(1, 1).Formula = "Elements" Else Worksheets("Sheet1").Cells(1, 1).Formula = "Nodes" Worksheets("Sheet1").Cells(1, 2).ClearContents Worksheets("Sheet1").Cells(1, 2).Formula = "X" Worksheets("Sheet1").Cells(1, 3).ClearContents Worksheets("Sheet1").Cells(1, 3).Formula = "Y" Worksheets("Sheet1").Cells(1, 4).ClearContents Worksheets("Sheet1").Cells(1, 4).Formula = "Z" End If Worksheets("Sheet1").Cells(1, 5).ClearContents Worksheets("Sheet1").Cells(1, 5).Formula = vec_title Counter = 1 If Not (Nodal) Then
API-63
'33. Fill the Sheet with elements and values, if the data is elemental. Do While sID > 0 '34. Retrieve the element information with the ID specified by sID. Element.Get (sID) '35. Retrieve the output values. The index must be the ID of the node/element where the output value is stored. Value = outdata.Value(sID) Worksheets("Sheet1").Cells(Counter + 1, 1).ClearContents Worksheets("Sheet1").Cells(Counter + 1, 1).Value = sID Worksheets("Sheet1").Cells(Counter + 1, 5).Activate Worksheets("Sheet1").Cells(Counter + 1, 5).Value = Value Counter = Counter + 1 sID = s1.Next Loop Else '36. Fill the sheet with nodes and values, if the data is nodal. Do While sID > 0 '37. Retrieve the element information with the ID specified by sID. Node.Get (sID) '38. Retrieve the output values. The index must be the ID of the node/element where the ' output value is stored. Value = outdata.Value(sID)
'39. Use the x, y , and z properties to return the respective values of the node location. x = Node.x y = Node.y z = Node.z Worksheets("Sheet1").Cells(Counter + 1, 1).ClearContents Worksheets("Sheet1").Cells(Counter + 1, 1).Value = sID Worksheets("Sheet1").Cells(Counter + 1, 2).ClearContents Worksheets("Sheet1").Cells(Counter + 1, 2).Value = x
API-64
Worksheets("Sheet1").Cells(Counter + 1, 3).Activate Worksheets("Sheet1").Cells(Counter + 1, 3).Value = y Worksheets("Sheet1").Cells(Counter + 1, 4).Activate Worksheets("Sheet1").Cells(Counter + 1, 4).Value = z Worksheets("Sheet1").Cells(Counter + 1, 5).Activate Worksheets("Sheet1").Cells(Counter + 1, 5).Value = Value Counter = Counter + 1 sID = s1.Next Loop End If '40. Now that Sheet1 is populated, use the Create_chart sub to create an Excel chart. Create_chart '41. Turn screen updating back on. Application.ScreenUpdating = True End Sub '********************************************************************************* '42. Create a chart of the column 5 versus column 1 values. Sub Create_chart() '43. Make column 5 the active selection. Columns(5).Select '44. Assign the address of the selected column of cells to valuecolumn. ValueColumn = Selection.Address '45. Make column 1 the active selection. Columns(1).Select '46. Assign the address of the selected column of cells to xcolumn. XColumn = Selection.Address ChartTitle = Worksheets("Sheet1").Cells(1, 5) XTitle = Worksheets("Sheet1").Cells(1, 1) '47. Create and format the chart. Charts.Add
API-65
ActiveChart.ChartType = xlLineMarkers ActiveChart.SetSourceData Source:= _ Sheets("Sheet1").Range(ValueColumn) ActiveChart.Location where:=xlLocationAsObject, Name:="Sheet1" ActiveChart.SeriesCollection(1).XValues = _ Sheets("Sheet1").Range(XColumn) With ActiveChart .HasTitle = True .ChartTitle.Characters.Text = ChartTitle .Axes(xlCategory, xlPrimary).HasTitle = True .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = XTitle .Axes(xlValue, xlPrimary).HasTitle = False End With ActiveChart.HasLegend = False End Sub ______________________________________________________________________________
API-66
hr = pDispApp->GetIDsOfNames( IID_NULL, &szFunction, 1, LOCALE_USER_DEFAULT, &dispid ); hr = pDispApp->Invoke( dispid, IID_NULL, LOCALE_USER_DEFAULT, DISPATCH_METHOD, &dispparamsNoArgs, &retcode, NULL, NULL ); } The example above calls a function with no arguments. Calling functions with array arguments can be even more complex since these need to be passed and accessed as VARIANT data types, which must be properly handled in C++. Using the FEMAP Type Library and ATL makes this function much easier, and more readable. To do that however, you must first import the Type Library into your application. In your programs header file, add the following line: #import d:\\v9\run\femap.tlb named_guids This will automatically create and include header files that make the API functionality available to your application. In addition, you should include the ATL and OLE Automation header files: #include atlsafe.h #include oleauto.h Once you have done this, you can write the above code in the following format. CLSID clsid; HRESULT hr=AfxGetClassIDFromString( "femap.model", &clsid); IUnknown FAR *punk; if ( hr == S_OK ) { hr=GetActiveObject(clsid,NULL,&punk); if ( hr == S_OK ) { CComQIPtr<femap::Imodel> pModel; pModel=punk; pModel->feFileExit(); } } Furthermore, once you have the pModel pointer, you can then simply use it like you would use the femap object in Visual Basic to provide direct access to the remainder of the API.
CLSID clsid; HRESULT hr=AfxGetClassIDFromString( "femap.model", &clsid); IUnknown FAR *punk; if ( hr == S_OK ) { hr=GetActiveObject(clsid,NULL,&punk); if ( hr == S_OK )
API-67
{ CComQIPtr<femap::Imodel> pModel; pModel=punk; CComQIPtr<femap::IDBase> pEntity; CComQIPtr<femap::INode> pNode; pEntity = pModel->feNode; pNode = pEntity; pEntity->Get(23); double xyz[3]; xyz[0] = pNode->x; xyz[1] = pNode->y; xyz[2] = pNode->z; } } If you are working with an object that contains array properties you can typically either use the Variant properties, or direct access to the arrays. For the Variant property - you can use code that looks like the following: CComQIPtr<femap::IBCGeom> pBCGeom; pBCGeom=pModel->feBCGeom; ... CComVariant vldof; CComSafeArray<BOOL> ldof(6); ldof[0]=TRUE; ldof[1]=TRUE; ldof[2]=TRUE; ldof[3]=FALSE; ldof[4]=FALSE; ldof[5]=FALSE; vldof = ldof; ... pBCGeom->type = 0; pBCGeom->geomType = 5; pBCGeom->Layer = 1; pBCGeom->color = 4; pBCGeom->vdof = vldof; ... pBCGeom->setID = 1; pBCGeom->Put(pBCGeom->NextEmptyID()); To retrieve values from an array property, you can simply reverse this: CComVariant vldof; CComSafeArray<BOOL> ldof(6);
API-68
BOOL dof; ... vldof = pBCGeom->vdof; ldof = vldof.parray; dof = ldof.GetAt(0); ... Or the simpler sequence, which bypasses the Variant... CComSafeArray<BOOL> ldof(6); BOOL dof; ... ldof = pBCGeom->vdof.parray; dof = pBCGeom->vdof.GetAt(0); ... Or the even simpler approach which uses direct access to the arrays... ... pBCGeom->dof[0] = TRUE; pBCGeom->dof[1] = TRUE; pBCGeom->dof[2] = TRUE; pBCGeom->dof[3] = FALSE; pBCGeom->dof[4] = FALSE; pBCGeom->dof[5] = FALSE; ... dof = pBCGeom->dof[0]; ...
API-69
The following shows a sample (in Basic) of how to create a FEMAP Application Object, and connect to a running FEMAP session. Dim App As Object Set App = GetObject(, "femap.model") If instead, you wanted to start a new FEMAP session, the proper approach would be: Dim App As Object Set App = CreateObject("femap.model") This call to CreateObject starts a new FEMAP session, but it will not be visible. If you want FEMAP to be visible, you must then call the feAppVisible method.
API-70
If you have an application that creates a new FEMAP session and then want to exit FEMAP and no longer have it running as a process, you need to: Set the femap instance to null or nothing. femap = nothing Also, if you are working on most .net platforms, you will also want to call the .net Garbage Collector. System.GC.Collect() If you have an application that connects to a running FEMAP session and then want to exit FEMAP and no longer have it running as a process, you need to call feFileExit () first, then also perform the steps above.
Issues When Connecting to an Existing Session
When you are connecting to an existing session there are some special considerations. If you are programming in an environment outside of FEMAP (anything but the FEMAP API Programming Window), then you must use GetObject to connect. This uses standard OLE/COM mechanisms to find the FEMAP object, but imposes a limitation. If you have multiple copies of FEMAP running (multiple processes, not multiple models open in the same FEMAP), GetObject will always connect you to the process that was started first. This is simply a limitation of the OLE/COM interface and can not be avoided. If you are using the integrated WinWrap environment (API Programming) however, you can overcome this limitation by never using GetObject. Instead, you can connect to the current FEMAP session, no matter how many FEMAP processes are running by using Dim App As Object Set App = feFemap() or more appropriately, to access the object information provided by the Type Library (as described below) Dim App As femap.model Set App = feFemap() The feFemap() method does the same thing as GetObject, but since the programming environment is fully integrated with FEMAP, it can always determine the session that launched your application and communicate directly with that process. This will work even if you save your Basic script from the API Programming window and connect it as a User Command to a toolbar button or menu command.
API-71
properties and methods. Even more convenient however when you are working with an object or method, you will see popup tooltips that give you information regarding the available properties, or the required parameter lists. If you are using a different language, like C++, you will always want to use the Type Library, since it provides much simpler access to the API functionality.
Referencing the Type Library Before you can use the Type library, you must reference it. The command to do this can be different depending on where you are working.
In Visual Basic
In Microsoft Visual Basic, go to the Project>References command (or Project->Add Reference in VB .NET) Look through the list of available references. If you find femap, make sure it is checked. If not, press the Browse button, and find the file femap.tlb, which should be in the directory where you installed FEMAP. Once you select that file, it should appear in the list of references (possibly at the bottom, and not in alphabetical order). Find the reference to femap, make sure it is checked and press OK. Although the list may be somewhat different, you should end up with femap checked as an available reference, as shown.
In Visual Basic for Applications
If you are programming with Microsoft Excel, Word or other Office applications, you will be using Visual Basic for Applications. The process to access the Type library is the same, except that instead of using the Project->References command, you must use the Tools->References command.
In Visual C++
In a Visual C++ project, you must add a reference to the Type Library by adding a reference to it in your header file. Add a line similar to: #import "path\femap.tlb" named_guids into your header file. Modify path to accurately locate the Type Library that you want to reference.
API-72
Using the Object Browser Once you have referenced the FEMAP Type library, you will be able to use the Object Browser to review the objects, properties and methods that are available. Simply go to the View->Object Browser (F2) command. You will see a form that looks something like the one shown here. To limit the information shown to the FEMAP classes, make sure you change the Project/Library to femap in the drop-down control near the top of the window. You can then browse through the list of available classes, and their associated properties and methods. When you select one of these items, a description of the item, along with any parameter lists is displayed at the bottom of the browser. Using the Type Library To use the information from the Type library, you must declare your objects using one of the available classes - not using the more generic Object definition. For example, instead of using:
Dim App as Object you must code, Dim App as femap.model Once you have declared the FEMAP object as shown, you still must Get/Set it in the same way that you did above. Therefore, to use the type library, and access an existing FEMAP session, the code required would be: Dim App as femap.model Set App = GetObject(,femap.model) or once again, if you are programming in the API Programming window, you should use Dim App as femap.model Set App = feFemap() to always connect to the current FEMAP session.
API-73
To create a new FEMAP session, using the type library use: Dim App as femap.model Set App = CreateObject(femap.model) As stated previously, there are definite advantages to using the type library. One of which is the popup list of available properties and methods. For example,after having defined your FEMAP/App object, as you type App. you will see a popup that shows the available properties and methods. Further, as you continue to type you will see a popup tooltip that shows you the parameter list for the method that you are working on.
The various classes from the Type library can also be used to define your other objects (not just App). This is described later in FEMAP Entity Objects on page 939.
running as two separate applications (no interaction) running FEMAP as a hidden server running your application as a FEMAP add-in embedding FEMAP graphics and messages in your application
Proper setup for each of these options is described in the following sections.
API-74
Set App = CreateObject(femap.model) rc = App.feAppVisible(True)
API-75
In this case the add-in application (FEMAP Editor) has been added to a pane in the FEMAP user interface in the upper-left corner, using the following method:
rc = App.feAppRegisterAddInPane(True, Form1.DefInstance.Handle.ToInt32, 0, False, False, 3, 2)
Note that the messageID window was not specified, because events are not being used. If you have registered your application as a FEMAP add-in, remember to call feAppRegisterAddInPane again to unregister your application before it exits.
API-76
3.2.4.1 Embedding FEMAP in your Application
To embed the FEMAP windows into your application, you simply call the feAppEmbed method. Here you specify the handle to your application window where you want the graphics embedded, the portion of that window to use for FEMAP. Here is a sample that embeds FEMAP when the button is pushed: Dim femap As Object Dim rc As Long Private Sub Command1_Click() Set femap = CreateObject("femap.model") rc = femap.feAppEmbed(Me.Handle, 120, 10, 660, 420) End Sub
Alternatively, with a few more calls, you can turn off various parts of the FEMAP interface to leave just the graphics window. Dim femap As Object Dim rc As Long Private Sub Command1_Click() Set femap = CreateObject("femap.model") rc = femap.feAppManageToolbars("", False) rc = femap.feAppManageStatusBar(False) rc = femap.feAppManagePanes("", 0) rc = femap.feAppManageGraphicsTabs(False) rc = femap.feAppEmbed(Me.Handle, 120, 10, 660, 420) End Sub
API-77
As your application window is moved around the screen the FEMAP windows will move with it, staying visible in the same relative location. If you want the FEMAP windows to resize as you resize your window, then you need to update the FEMAP window as you are resizing. During resizing, simply keep calling feAppEmbed with new coordinates and sizes. You can still maximize FEMAP, and if you do, it will fill the client area of your window, possibly covering other items (like the button above). You can control the look of the FEMAP graphics windows by modifying the various view options prior to making a view visible. Note that you do not want to call feAppVisible if you want to run in this mode. Calling feAppEmbed will automatically make the windows visible, and calling feAppVisible first will just cause unnecessary flashing of the windows.
3.2.4.2 Capturing the FEMAP Messages
In addition to embedding graphics or messages windows, you may want to capture the text that is displayed in the FEMAP message window and display it in one of your own windows. Capturing the FEMAP message stream is a bit more involved than a single method call, however it is not too difficult. It is very similar to the approach needed for capturing FEMAP events. In addition, you can turn message capture on and off at any time. The procedure to capture messages is as follows:
Get or Create a FEMAP object Call feAppRegisterMessageHandler to provide the handle to a window which will process the messages. This does not have to be the window where the messages will be displayed, but it must be a window with a message loop that you can watch and modify. Override the standard Windows procedure for the window that you registered. This requires a call to the Windows function SetWindowsLong, setting the GWL_WNDPROC constant. You need to Declare this Windows function and define the constant before accessing it.
API-78
Write the new Windows procedure to process the WM_COPYDATA messages that you will be receiving from FEMAP. You should also pass all other messages along to the standard Windows procedure that you overrode. In this procedure, every time you receive a WM_COPYDATA message, you will extract the text string (and possibly the color) from the message, process it in any way that you choose, and display it wherever you want. To stop capturing messages, or when you exit your application, call feAppRegisterMessageHandler again to unregister your window and stop FEMAP from sending WM_COPYDATA messages. You should also replace the original Window message procedure.
Format of the WM_COPYDATA messages Since Windows only passes messages with wParam and lParam values, both of which are long values, it is difficult to pass a general text string through a message. The WM_COPYDATA message however was created to allow interprocess communication of other data types. In this message, the lParam value contains the address of a data structure defined as follows:
Type COPYDATASTRUCT dwData As Long cbData As Long lpData As Long End Type cbData contains the number of bytes of data in lpData. FEMAP uses this to pass the text string for each message in the lpData portion of the structure. You can use the Windows CopyMemory function to move the data in the structure to a variable defined as a COPYDATASTRUCT, and then again to extract the string data from lpData. In addition to the string data, FEMAP also passes the message color/status information in the dwData field. Refer to the feAppMessage method (Section 3.16.8.1, "feAppMessage") for more information regarding color values.
Sample Program to Capture and Display FEMAP Messages The following program is a fairly simple example of what is required to capture and display the messages from FEMAP. As you can see, it does require quite a bit more work than simply embedding a messages window, but does provide the flexibility of modifying and displaying the messages in any way you would like.
Each of the declarations in the beginning of this program are necessary for its proper operation. You must have proper access to these global Windows constants and functions. The MsgWindowProc function is used to override the standard Windows message loop and process the WM_COPYDATA messages coming from FEMAP. In this case, once the message is extracted, it is simply added to a listbox control on the main form. CaptureMessages connects to FEMAP and sets up the message capture, including defining MsgWindowProc as the procedure to override message processing. ReleaseMessages terminates message capture and can be called either at shutdown or if you simply want to stop capturing messages. Global Global Global Global Global femap As Object Const GWL_WNDPROC = (-4&) Const GWL_HWNDPARENT = (-8) Const WM_COPYDATA = &H4A PreviousWindowProc As Long
API-79
'=============================================================== Type COPYDATASTRUCT dwData As Long cbData As Long lpData As Long End Type '=============================================================== ' Public Declarations to provide access to Windows API functions '--------------------------------------------------------------Public Declare Function GetWindowLong Lib "user32" _ Alias "GetWindowLongA" (ByVal hwnd As Long, _ ByVal nIndex As Long) As Long Public Declare Function RegisterWindowMessage Lib "user32" _ Alias "RegisterWindowMessageA" (ByVal lpString As String) _ As Long Public Declare Function SetWindowLong Lib "user32" _ Alias "SetWindowLongA" (ByVal hwnd As Long, _ ByVal nIndex As Long, ByVal dwNewLong As Long) _ As Long Public Declare Function CallWindowProc Lib "user32" _ Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, _ ByVal hwnd As Long, ByVal Msg As Long, _ ByVal wParam As Long, ByVal lParam As Long) As Long Public Declare Sub CopyMemory Lib "kernel32" _ Alias "RtlMoveMemory" _ (hpvDest As Any, hpvSource As Any, ByVal cbCopy As Long) '================================================================ ' Override Window procedure and process WM_COPYDATA messages '---------------------------------------------------------------Public Function MsgWindowProc(ByVal hwnd As Long, _ ByVal uMsg As Long, ByVal wParam As Long, _ ByVal lParam As Long) As Long Dim rc As Long Dim cds As COPYDATASTRUCT Dim buf(1 To 255) As Byte If uMsg = WM_COPYDATA Then Call CopyMemory(cds, ByVal lParam, Len(cds)) Call CopyMemory(buf(1), ByVal cds.lpData, cds.cbData) a$ = StrConv(buf, vbUnicode) a$ = Left$(a$, InStr(1, a$, Chr$(0)) - 1) 'Add to Listbox Form1.List1.AddItem (a$) MsgWindowProc = True Else MsgWindowProc = CallWindowProc(PreviousWindowProc, _ hwnd, uMsg, wParam, lParam) End If End Function '================================================================ ' Initialize FEMAP object and capture messages
API-80
'---------------------------------------------------------------Public Sub CaptureMessages() Dim rc As Long Set femap = GetObject(, "femap.model") rc = femap.feAppRegisterMessageHandler(True, Form1.hwnd) PreviousWindowProc = SetWindowLong(Form1.hwnd, GWL_WNDPROC, _ AddressOf MsgWindowProc) End Sub '================================================================ ' Stop capturing messages '---------------------------------------------------------------Public Sub ReleaseMessages() Dim rc As Long If PreviousWindowProc Then rc = femap.feAppRegisterMessageHandler(False, Form1.hwnd) rc = SetWindowLong(Form1.hwnd, GWL_WNDPROC, _ PreviousWindowProc) PreviousWindowProc = 0 End If End Sub '================================================================ When combined with a Basic Form, this code drives an application that looks like:
In addition to the code shown above, the following code connects the buttons on the form to the previous code. Private Sub Capture_Click() Call CaptureMessages End Sub Private Sub ListInfo_Click() rc = femap.feFileProgramRun(False, True, False, "{LI}") End Sub Private Sub Release_Click() Call ReleaseMessages End Sub
API-81
Private Sub Form_Unload(Cancel As Integer) Call ReleaseMessages End Sub
A few simple tests using these methods show that using them can improve the performance of your application by a factor of 10 or more in areas where many API calls are being made, so it is worth the time to implement these simple methods.
The FEMAP object properties are global in nature. Changing their values will have an immediate impact on the FEMAP session. Use care when changing these (or any other) properties.
API-82
In these tables, you will see some properties that list two names - one of which is an array, the other a Variant. Refer to Section 1.2.7, "Multiple Definitions of Array Properties" for more information.
These Global Properties set the options on the Geometry Replacement Options dialog box after a file has been selected for import and the Update Existing Geometry option is available:
Solid_UpdateActive
BOOL
Mesh Sizing The type of mesh resizing to do if you are updating Parasolid geometry on import: 0=Keep existing sizes, 1=Update sizes on curves that exceed a certain length change tolerance, 2=Resize all.
Solid_UpdateResizeMode
INT4
API-83
Geometry Replacement Options
Property Description The tolerance above which curve mesh sizes will be recomputed when curves change length during import of updated Parasolid geometry. Only used if the appropriate Solid_UpdateResizeMode is used. Type
Solid_UpdateResizeTol
REAL8
Update Options If True, active Parasolid geometry and any mesh on that geometry will be deleted if updated geometry is imported. Only used if Solid_UpdateActive is also True. If True, the geometry will be updated using Parasolid Identifiers. Only used if Solid_UpdateActive is also True. If True, the existing geometry will be updated to use the Material Data of the imported solid. Only used if Solid_UpdateActive is also True.
Solid_UpdateDelete
BOOL
Solid_UpdateParasolidIdent
BOOL
Solid_UpdateMaterialData
BOOL
API-84
These Global Properties are used to set the options on the Page Setup dialog box:
API-85
Page Setup Properties
Property PgSetup_TextFont PgSetup_TextFontSize Page Margins PgSetup_LeftMargin PgSetup_RightMargin PgSetup_TopMargin PgSetup_BottomMargin Plot and Metafile Style PgSetup_PrintBorder PgSetup_SwapBW PgSetup_Monochrome PgSetup_TransparentBkgd PgSetup_PenScale PgSetup_RenderScale Plot Position and Size PgSetup_MaintainAspect If True, plots will maintain the same aspect ratio as the on-screen window. If True, the plotting dimensions in device units (pixels) must be an integer multiple of the dimensions of the on-screen window. This is primarily used for printing bitmaps with the highest possible accuracy. If True, plot will fill the printer margins. If False, use the custom height and width. Height and width for custom print size (only used if PgSetup_FillMargins = False). Vertical alignment: T/B Center=0, Top=1, Bottom=2. Horizontal alignment: L/R Center=0, Left=1, Right=2. BOOL If True, a border is drawn around the plot. If True, black and white colors are reversed for printing and metafiles. If True, print is done in monochrome. If True, the background is not filled in a printer resolution print or Metafile. Has been removed. Use Pref_ResPenMethod =1 and Pref_ResPenScale instead Has been removed. Use Pref_ResCopySaveMethod =1 and Pref_ResCopySaveScale instead BOOL BOOL BOOL BOOL INT4 REAL8 Page margins. REAL8 REAL8 REAL8 REAL8 Description Name of font to use for other text. Only used if PgSetup_DefaultTextFont=False. Size in points of the font for printed text. Type STRING INT4
PgSetup_IntegerScaling
BOOL
API-86
These Global Properties are used to set the options on the Messages tab of the Preferences dialog box:
INT4
API-87
Messages Preference Properties
Property Pref_MessageFont Pref_MsgWndFontSize Pref_ListingFont Pref_ProgramFont Pref_ProgramFontSize Pref_MsgWndBackColor Pref_MsgWndTextColor Pref_MsgWndTextBold Pref_MsgWndCmdColor Pref_MsgWndCmdBold Pref_MsgWndHighColor Pref_MsgWndHighBold Pref_MsgWndWarnColor Pref_MsgWndWarnBold Pref_MsgWndErrorColor Pref_MsgWndErrorBold Pref_MsgWndFont Description Name of font used for messages (other than listings) in the Message Window. Message window font size in points. Name of font (fixed-pitch) used for listings in the Message Window. Name of font used for API and Program File windows. Font size of the font used for the API and Program File panes Message window Background Color. Message window Text Color. If True, normal Text written to the Message Window uses a bold font Message window Command Color If True, Command names written to the Message Window use a bold font Message window Highlighted Text Color. If True, Highlighted Text written to the Message Window uses a bold font Message window Status Message Color. If True, Status Messages written to the Message Window use a bold font Message window Error Color. If True, Error messages written to the Message Window use a bold font Name of fixed-pitch font to be used in Messages and Lists window. Type STRING REAL8 STRING STRING REAL8 INT4 INT4 BOOL INT4 BOOL INT4 BOOL INT4 BOOL INT4 BOOL STRING
API-88
These Global Properties are used to set the options on the Views tab of the Preferences dialog box:
Background Bitmaps (Render Only) Pref_ViewBkgdBitmap Pref_ViewLogo Filename for the Background bitmap. Filename for the Logo bitmap. STRING STRING
API-89
Views Preference Properties
Property Description If True, the View Logo is defined in Screen Resolution, and will be scaled when printed. If False, it is in Print Resolution and is scaled for Screen display. Type
Pref_ViewLogoScreenRes
BOOL
Picture Copy Pref_PictureCopyTextForXY Controls whether comma-separated text is sent to the clipboard when an XY plot is copied. True = Include Text. Controls whether a Windows Metafile is sent to the clipboard when the graphics area is copied. True = Include Metafile format. BOOL
BOOL
Controls the default picture format for Picture Save. 0=BMP, 1=JPG, 2=PNG, 3=GIF, 4=TIF Controls the default animation format for Picture Save. 0=BMP, 1=BMP series, 2=AVI, 3=GIF
INT4 INT4
Picture Save Defaults (Resolution Options) Pref_ResPrintMethod Pref_ResPrintScale Specifies the Print Resolution method (0=Printer, 1=Screen, 2=Screen Scaled By) Scale factor used by Screen Scaled By method in the Print Resolution section Specifies the Copy/Save Resolution method (0=Screen, 1=Screen Scaled By, 2=Screen Scaled With Width, 3=Screen Scaled With Height, 4=Fixed Size) Scale factor used by Screen Scaled By method in the Copy/Save Resolution section Resolution used by Screen Scaled With Width method in the Copy/Save Resolution section Resolution used by Screen Scaled With Height method in the Copy/Save Resolution section. Resolution used by Fixed Size method to set the Width in the Copy/Save Resolution section Resolution used by Fixed Size method to set the Height in the Copy/Save Resolution section INT4 REAL8
Pref_ResCopySaveMethod
INT4
API-90
Views Preference Properties
Property Pref_ResPenMethod Pref_ResPenScale Pref_ResScreenLogoScale Pref_ResPrintLogoScale Pref_ResCopySaveLogoScale Description Specifies the Pen Width method (0=Auto, 1=Manual Factor) Sets Manual Factor value in the Pen Width section Sets the value for Screen Scale in the Logo and Background Bitmap Scaling section Sets the value for Print Scale in the Logo and Background Bitmap Scaling section Sets the value for Copy/Save Scale in the Logo and Background Bitmap Scaling section Type INT4 INT4 REAL8 REAL8 REAL8
Picture Save Defaults (GIF Options) Pref_GIFColorOpt Pref_GIFAnimationDelay Pref_GIFFrameSeries Options Pref_AltFillMode Pref_WorkplaneNotVisible Alternate filling mode for polygons. Controls whether the workplane will be visible when you start a new model. True = Workplane Never Visible in New View Obsolete - see Pref_DefContourPalette Default Contour Palette 0=Standard, 1=No Magenta, 2=Temperature, 3=Red,Yellow,Green, 4=Gray If True, the views that were active when a model was saved are reopened when the model is opened. Aspect ratio for new views. BOOL BOOL The color options for creating a GIF picture file. 1=Network, 2=Octree, 3=Color Diffusion (Dither) The delay between frames of an animated GIF file Controls whether Animations will be saved in GIF formats as a series of files or a single animated GIF. True=Save GIF Frame Series. INT4 INT4 BOOL
Pref_AltContourPalette
BOOL
Pref_DefContourPalette
INT4
Pref_OpenSavedViews Pref_AspectRatio
View and Dynamic Rotation Pref_DeltaAngle Angle for incremental rotation in the View, Rotate command. REAL8
API-91
Views Preference Properties
Property Pref_ViewDynamicMode Pref_ViewDynamSpeed Pref_ViewDimetric Pref_ViewIsometric Pref_ViewTrimetric Pref_AngleIsometric[0..2] or VARIANT vPref_AngleIsometric Pref_AngleDimetric[0..2] or VARIANT vPref_AngleDimetric Pref_AngleTrimetric[0..2] or VARIANT vPref_AngleTrimetric The rotation angles assigned to the corresponding buttons in the View, Rotate command. Description Dynamic rotation mode: 0=Fast Redraw, 1=Reduced Bitmap, 2=Full Bitmap. Speed of dynamic rotation. Text for Dimetric button in View, Rotate. Text for Isometric button in View, Rotate. Text for Trimetric button in View, Rotate. Type INT4 REAL8 STRING STRING STRING REAL8
REAL8
REAL8
API-92
These Global Properties are used to set the options on the Render tab of the Preferences dialog box:
API-93
Render Preference Properties
Property Description Type
Controls drawing of Beam Facet Edges between cross sections of beams If True, uses antialiasing to render smooth lines If True, graphics are completely regenerated after every command If True, enables faster, in-memory selection of entities
Pref_RenderEdgesAsLines
If True, element and surface edges are drawn as lines rather than using edge flags.
BOOL
Pref_RenderVertexArrays
INT4
INT4
The flags used to indicate which entities will be on for dynamic rotation. 0-Point, 1-Curve, 2-Surface, 3-Boundary, 4-Volume, 5-Text, 6-Coordinate Sys, 7-Node, 8-Element, 9-Constraint, 10-Load, 11Connections, 12-Fill, 13-Filled Edges, 14-Shading, 15-Undeformed, 16-Labels, 17-Workplane, 18-Mesh Size, 19-Smooth Lines, 20-Elements as Free Edge, 21-Element Symbols
BOOL
Textures Pref_RenderTex2D Pref_RenderTexSmooth Pref_RenderTexAllTri Pref_RenderTexNumber Advanced/Debug Options Pref_RenderTiming If True, prints render timings BOOL If True, uses 2D Texture Mapping If True, uses smooth textures If True, forces all triangles for texture mapping Max Number of Textures BOOL BOOL BOOL INT4
API-94
Render Preference Properties
Property Pref_RenderBitmapAlignment Pref_RenderPixelFormat Pref_RenderBitBltDelay Description Alignment of Bitmaps stored for OpenGL - do not change. Controls selection of Graphics Descriptors 0=Automatic Value needed for Delay in synchronizing OpenGL and GDI on some graphics cards (0..1000) Type INT4 INT4 INT4
These Global Properties are used to set the options on the User Interface tab of the Preferences dialog box:
API-95
Pref_RememberDialogPos
BOOL
Pref_AltAccelerator Pref_FastOutputDelete Pref_RecentlyUsedFiles Graphical Selection Pref_TrackMousePick Pref_PickAllInside Pref_TooltipDelay Pref_TooltipDuration Mouse Interface Pref_ReverseMouseWheel Pref_ReversePanZoom Meshing Toolbox Pref_TbxExpandActive Pref_TbxAutomesh Dockable Panes
Activates dynamic selection tracking. Controls selection of entities when screen area picking is used. Delay before Selector Tooltips appear (in tenths of a second). Length of time before Selector Tooltips automatically disappear (in tenths of a second).
Controls the direction of zoom when you turn the mouse wheel If True, hold down Shift to Zoom, and Ctrl for Pan in Dynamic Rotation. If False, reverse the keys.
BOOL BOOL
If True, only the active tool will be expanded 0=AutoRemesh, 1=Track Changes, 2=Disable Remesh
BOOL INT4
API-96
User Interface Preference Properties
Property Pref_AnimatePanes Description If True, the docking panes will animate when you click on their tab to make them visible. If True, the docking panes will always have their captions placed on the top of the pane. Otherwise they are either on the top or left, whichever takes less space. If True, the docking position indicators will be shown using the original symbols instead of the new symbols. Type BOOL
Pref_PaneCaptionsOnTop
BOOL
BOOL
Limits the max number of items of each type to show in the Model Info tree. Controls whether automatic titles will be given to otherwise untitled entities.
INT4 BOOL
API-97
These Global Properties are used to set the options on the Database tab of the Preferences dialog box:
API-98
Database Preference Properties
Property Pref_DBLowDiskWarning Pref_DBUndoLevels Database Performance Pref_DBCacheMaxMemoryPct Pref_DBCacheBlocksPerPage Pref_DBCacheMaxLabel Sets max percentage value to use for Database Memory Limit Number of blocks per page in the database cache. Maximum cached database node/element label. Choose and Open/Save Method. 0=Window I/O, 1=C I/O, 2=Windows 64K I/O, and 3=C 64K I/O. See Section 3.4.11.4, "feRunIOTest" for information about running the Read/Write Test to determine the preferred value for Open/Save Method INT4 INT4 INT4 Description Issues a warning when free space on the model scratch disk falls below this amount (in MByte). 0=Disable. Maximum number of undo levels. Type INT4 INT4
Pref_OpenSaveMethod
INT4
Timed Save Pref_TimedSaveOn Pref_TimedSaveNotify Pref_TimedSaveInterval Pref_TimedSaveCommands Scratch Directory Pref_DBScratch Path (no filename) for model scratch file. STRING Turns on Timed Save automatically. Sets Timed Save to notify you before saving. Number of minutes between timed saves. Number of commands between timed saves. BOOL BOOL INT4 INT4
API-99
These Global Properties are used to set the options on the Geometry/Model tab of the Preferences dialog box:
API-100
Geometry/Model Preference Properties
Property Description Solid geometry scale factor used to make sure that geometry fits inside the limited coordinate spaces used by the solid modeling engines. This value is copied to Info_GeometryScale when a model is started, and is used throughout that model. Setting this value to: 39.37 will change the drop-down to 0..Inches 1.0 will change the drop-down to 1..Meters 1000.0 will change the drop-down to 2..Millimeters All other values change the drop-down to 3..Other Default for construction geometry: 0=Delete, 1=Move To No Pick Layer, 2=Do Nothing. If True, geometry scale factors are automatically adjusted to match the modeling scale factor. Type
Pref_GeometryScale
REAL8
Pref_ConstructionGeometry Pref_GeomScaleAdjust
INT4 BOOL
Load Expansion on Midside Nodes Pref_GeomLoadEdgeFactor Pref_GeomLoadTriFactor Pref_GeomLoadQuadFactor Adjustment factor for load expansion on midside nodes along edges. Adjustment factor for load expansion on midside nodes on tri faces. Adjustment factor for load expansion on midside nodes on quad faces. Enables default adjustment of nodal loads at the midside of parabolic elements during geometry load expansion. REAL8 REAL8 REAL8
Pref_AdjMidsideGeomLoad Log File Pref_GeomLogFile Meshing and Properties Pref_MeshInMemory Pref_FastTriMesh Pref_LengthBasedMeshSize Pref_AltSectionProp
BOOL
Enables a log file for all solid modeling operations (for debugging purposes only).
BOOL
Allows the boundary mesher to allocate additional memory to speed up its operation. Chooses the Fast Tri Mesher as the default triangular mesher. If True, the default mode for mesh sizing will be length-based, rather than parametric. If True, uses the alternate section property calculator
API-101
Geometry/Model Preference Properties
Property Output Orientation button Defines raw orientation of isotropic material solid element output vector data 0 = Material Direction 1 = Global Rectangular 2 = Element Defines raw orientation of anisotropic material solid element output vector data 0 = Material Direction 1 = Global Rectangular 2 = Element Defines raw orientation of hyperelastic material solid element output vector data 0 = Material Direction 1 = Global Rectangular 2 = Element Defines raw orientation of Tria3 stress output vector data 0 = First Edge 1 = Midside Location Defines raw orientation of Tria3 strain output vector data 0 = First Edge 1 = Midside Location Defines raw orientation of Tria3 force output vector data 0 = First Edge 1 = Midside Location Defines raw orientation of Tria6 stress output vector data 0 = First Edge 1 = Midside Location Defines raw orientation of Tria6 strain output vector data 0 = First Edge 1 = Midside Location Defines raw orientation of Tria6 force output vector data 0 = First Edge 1 = Midside Location Description Type
Info_OrientSolidIsoOutput
INT4
Info_OrientSolidAnisoOutput
INT4
Info_OrientSolidHyperOutput
INT4
Info_OrientTria3StressOutput
INT4
Info_OrientTria3StrainOutput
INT4
Info_OrientTria3ForceOutput
INT4
Info_OrientTria6StressOutput
INT4
Info_OrientTria6StrainOutput
INT4
Info_OrientTria6ForceOutput
INT4
API-102
Geometry/Model Preference Properties
Property Description Defines raw orientation of Quad4 stress output vector data 0 = First Edge 1 = Midside Location 2 = Diagonal Bisector Defines raw orientation of Quad4 strain output vector data 0 = First Edge 1 = Midside Location 2 = Diagonal Bisector Defines raw orientation of Quad4 force output vector data 0 = First Edge 1 = Midside Location 2 = Diagonal Bisector Defines raw orientation of Quad8 stress output vector data 0 = First Edge 1 = Midside Location 2 = Diagonal Bisector Defines raw orientation of Quad8 strain output vector data 0 = First Edge 1 = Midside Location 2 = Diagonal Bisector Defines raw orientation of Quad8 force output vector data 0 = First Edge 1 = Midside Location 2 = Diagonal Bisector Type
Info_OrientQuad4StressOutput
INT4
Info_OrientQuad4StrainOutput
INT4
Info_OrientQuad4ForceOutput
INT4
Info_OrientQuad8StressOutput
INT4
Info_OrientQuad8StrainOutput
INT4
Info_OrientQuad8ForceOutput
INT4
API-103
These Global Properties are used to set the options on the Interfaces tab of the Preferences dialog box:
API-104
Interfaces Preference Properties
Property Pref_NeutralDigits Pref_InterfaceStyle Pref_UseOldAnalysisInterfaces Analysis Monitor Options Pref_AnalysisMonAutoLoad Pref_AnalysisMonMaxLines File Reference Options Pref_FileRefCheck Pref_FileRefGeometry Pref_FileRefModel Pref_FileRefResults General Solver Options Pref_UseVisQ For an integerated solver, turning this on will start the solver with VisQ (if it is available). If True, comments will NOT be written to NASTRAN. This can get around some character set issues in entity titles. If True, FEMAP automatically Computes Principal Stress/Strain and other quantities if they have not been read from results. If True, FEMAP Assumes Shear Strain results are Engineering shear strain. BOOL If True, checks file references when the model is opened If True, creates geometry references when files are read If True, creates analysis model references when files are read If True, creates results file references when files are read. BOOL BOOL BOOL BOOL If True, will automatically load results when using the Analysis Monitor Default Max number of lines to include in the Analysis Monitor BOOL INT4 Description Number of significant digits for real numbers in Neutral files. Default user Interface Style: 0=Structural, 1=Thermal, 2=Adv. Thermal. If True, older, unsupported analysis program interfaces will still be available. Type INT4 INT4 BOOL
Pref_WriteComments
BOOL
Pref_ComputePrincipal
BOOL
BOOL
BOOL
API-105
Interfaces Preference Properties
Property Pref_ImproveSinglePrecision Description If True, FEMAP writes real numbers to Nastran files using a nonstandard exponential format that improves precision. Used by the Nastran OP2 file reader to set Output Set titles to the TITLE (1), SUBTITLE (2), or LABLE (3) text. Amount of memory specified for Nastran solver Location of Nastran Output Files (0=Current Directory, 1=Model File Directory, 2=Specified Directory) Name/path of specified Output Directory for Nastran solver output Flag to use ILP64 NX Nastran if installed. Default for Analysis Set to write all Static Loads/ Boundary conditions. If True, an attempt will be made to read NASTRAN comment cards as entity titles. If True, FEMAP will read direction cosine matrices for stress/strain results. If True, FEMAP will delete Synthetic load sets that it creates during reading of NASTRAN LOAD cards. If True, FEMAP will create groups based on entities in INCLUDE files found in a Nastran input file. Type BOOL
Pref_OutputSetTitles Pref_NastranMemory Pref_NastranOutputTo Pref_NastranOutputPath Pref_NastranUseILP64 Pref_NastranWriteAllLdbcSets Pref_ReadComments Pref_ReadDirCos Pref_DeleteRdScratchLdSets Pref_GroupIncludeFiles Auto Answer Post Questions Pref_NasQstOn[0..5] or VARIANT vPrefNasQstOn
INT4 INT4 INT4 STRING BOOL BOOL BOOL BOOL BOOL BOOL
Pref_NasQstOn enables Auto Answer for each question. Questions: 0-Read Nonlinear Output, 1-Output Contains QUADR Elements, 2-Output Contains Corner Output, 3-Read PSD/Freq Functions, 4-Read Corner Output, 5-Hide f06 Warning dialog Pref_NasQstVal sets the question answer. Answers: 0 - No, 1 - Yes
BOOL
BOOL
API-106
These Global Properties are used to set the options on the Library/Startup tab of the Preferences dialog box:
Pref_LibConnectionProp
STRING
API-107
Library/Startup Preference Properties
Property Pref_LibFunction Pref_LibAnalysis Pref_LibReport Pref_LibMatlDef Description Filename for Function Library. Filename for Analysis Library. Filename for report Format Library. Filename for Material Definition Library. Type STRING STRING STRING STRING
Startup Program File/Basic Script/Executable and Custom Tools Pref_CustomToolsPath Pref_StartupProg Pref_RunProgNewModels Name/path of specified directory for Custom API Tools Name/path of a startup program (Program File or API) If True, the startup program will be run every time a new model is opened. STRING STRING BOOL
API-108
These Global Properties are used to set the options on the Color tab of the Preferences dialog box:
INT4
API-109
Color Preference Properties
Property Palettes (Blank for Standard) Pref_LibPalette Pref_LibContPal Filename for Color Palette Library. Filename for User Contour Palette Library. STRING STRING Description Type
These Global Properties are used to set the options on the Spaceball tab of the Preferences dialog box:
API-110
Debug Options
hListWnd
Event Properties The lParam value for the active event. This is not used for many events, but can be accessed from any event callback. NOTE: This is an 8-byte integer, not a 4-byte integer like most other properties.
EventLParam
File Print Print_Copies Message Window A combination of one or more destinations (Screen, Printer, File) where listings are sent. 1=Messages Window only, 16=Printer only, 256=File only, 17=Messages Window and Printer, 257=Messages Window and File, 272=Printer and File, 273=Messages Window, Printer, and File.(INT4) The path to a file to use for listing when the File destination is chosen.(STRING) Number of copies to print (only works with printers that support setting a number of copies).
List_Destination
List_FileName
API-111
The Active ID of the selected entity. For information on entities, see Section 3.3.6, "Entity Types". The Active Type of the selected entity. For information on entities, see Section 3.3.6, "Entity Types". The default color for the selected entity. For information on entities, see Section 3.3.6, "Entity Types". The default output coordinate system for node creation. The default node type for node creation: 0=Node, 1=Scalar, 2=Extra. The default color for the border of text objects that are created. The surface ID where the workplane is located. The value is 0 if the workplane is simply located somewhere in model space. The previous value of Info_WorkplaneOnSurface. Current snap mode: 0=Screen, 1=Grid, 2=Point, 3=Node. The snap grid style: 0=Invisible, 1=Dots, 2=Lines.
API-112
Info_MatlAngleDir
Info_MatlAngleCSys
Info_MeshSizeMinElem Info_SurfDivisionsLinear[0..1] or VARIANT vInfo_SurfDivisionsLinear Info_SurfDivisionsCurved[0..1] or VARIANT vInfo_SurfDivisionsCurved Info_ViewShowColor Info_ViewShowEntity Info_ViewShowLabel
Info_GroupAutomaticAdd
API-113
The formulation options which are available for the various types of elements. Data is stored as bits inside these values.
The color used to draw curves that are suppressed for meshing The color used to draw surfaces that are suppressed for meshing
DialogAutoAnswer
PickBoundaryInternalMode
PickCombinedCurveInternalMode
User Interface
API-114
API-115
The minimum and maximum dimensions of the workplane in the X and Y directions.
Info_MeshSizeDefault
Info_GeometryScale
API-116
API-117
API-118
For more information about the entity types marked with a *, please see the explanations after the table.
Entity Type FT_POINT FT_CURVE FT_SURFACE FT_VOLUME FT_NODE FT_ELEM FT_CSYS FT_MATL FT_PROP FT_LOAD_DIR * FT_SURF_LOAD * FT_GEOM_LOAD * FT_NTHERM_LOAD * FT_ETHERM_LOAD * FT_BC_DIR * FT_BCO * FT_BCO_GEOM * FT_BEQ * FT_TEXT FT_VIEW FT_GROUP FT_VAR * FT_OUT_CASE *
Numeric Value 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 24 27 28
Entity Type FT_LAYER FT_FUNCTION_DIR FT_FUNCTION_TABLE FT_SOLID FT_COLOR FT_OUT_CSYS FT_DESIGN_OPT * FT_LOAD _DEFINITION FT_MODEL_NOTES * FT_CONTACT * FT_AMGR_DIR FT_REFERENCE * FT_DATA_SURF FT_CONNECTION FT_CONNECTION_PROP FT_BC_DEFINITION * FT_LAYUP FT_LAYUP_PLY FT_LAYUP_GLOBALPLY FT_BOLT_PRELOAD FT_TMG_BCO FT_TMG_CONTROL FT_TMG_INTEGER
API-119
Numeric Value 115 116
Numeric Value 29 30 31
FT_BOUNDARY 32 *FT_LOAD_DIR = FEMAP Load Set FT_SURF_LOAD = Nodal or Elemental Nodes FT_NTHERM_LOAD = Nodal Temperatures FT_ETHERM_LOAD = Elemental Temperatures FT_BC_DIR = FEMAP Constraint Set FT_BCO = Nodal Constraint FT_BCO_GEOM = Constriant on geometic entity FT_BEQ = Constraint Equation FT_VAR = FEMAP Variable (Tools, Varibales...command in FEMAP) FT_OUT_CASE = FEMAP Output Set FT_OUT_DIR = Output Vector Header (includes Output Vector ID, Title, Type - Nodal or Elemental, Max and Min Values) FT_OUT_DATA = Output Vector Data (Data at each node or element) FT_REPORT = List, Output Format FT_DESIGN_OPT = Design Optimization FT_MODEL_NOTES = Notes saved in File, Notes FT_CONTACT = FEMAP Connector (contact pair) FT_REFERENCE = References saved in File, References FT_BC_DEFINITION = FEMAP Constraint Definition.
API-120
Analysis Types
The following table lists constants to be used for Analysis Types. Constant Name Constant Name
FAT_UNKNOWN FAT_STATIC FAT_MODES FAT_TRANSIENT FAT_FREQUENCY_RESPONSE FAT_RESPONSE_SPECTRUM FAT_RANDOM FAT_LINEAR_BUCKLING FAT_DESIGN_OPTIMIZATION FAT_EXPLICIT FAT_NONLINEAR_STATIC
FAT_NONLINEAR_BUCKLING FAT_NONLINEAR_TRANSIENT FAT_FATIGUE FAT_DATA_RECOVERY FAT_CFD FAT_STEADY_STATE_HEAT FAT_TRANSIENT_HEAT FAT_601_STATIC FAT_601_TRANSIENT FAT_701_EXPLICIT
Analysis Progams
The following table lists constants to be used for Analysis Programs. Constant Name Constant Name
FAP_UNKNOWN FAP_FEMAP_GEN FAP_PAL FAP_PAL2 FAP_MSC_NASTRAN FAP_ANSYS FAP_STARDYNE FAP_COSMOS FAP_PATRAN FAP_NEUTRAL FAP_ALGOR
FAP_CDA_SPRINT FAP_CAEFEM FAP_IDEAS FAP_ME_NASTRAN FAP_ADINA FAP_GENESIS FAP_ODBC FAP_CSA_NASTRAN FAP_CFDESIGN FAP_LS_DYNA FAP_MARC
API-121
Constant Name
Constant Name
API-122
FABC_ND_APPLIED LOAD FABC_ND_REACTION_FORCE FABC_ND_DISPLACEMENT FABC_ND_VELOCITY FABC_ND_ACCELERATION FABC_ND_TEMPERATURE FABC_ND_HEAT_FLUX FABC_ND_MPC_FORCES FABC_ND_FORCE_BALANCE FABC_ND_KINETIC_ENERGY FABC_EL_FORCE FABC_EL_STRESS
FABC_EL_STRAIN FABC_EL_PLASTIC_STRAIN FABC_EL_STRAIN_ENERGY FABC_EL_HEAT_FLUX FABC_EL_ENTHALPY FABC_EL_ENTHALPY_RATE FABC_EL_CONTACT FABC_EL_TEMPERATURE FABC_EL_KINETIC_ENERGY FABC_EL_ENERGY_LOSS FABC_EL_FLUID PRESSURE
Point Types
The following table lists constants to be used for Point Types. Constant Name Constant Name
FPT_DEFAULT
FPT_SOLID
Curve Types
The following table lists constants to be used for Curve Types. Constant Name Constant Name
API-123
FCR_BY_VECTOR FCR_BY_LOCATION
FCR_BY_VECTOR_REV FCR_BY_LOCATION_REV
FCO_BY_VECTOR FCO_RADIAL
FCO_POINT
FCC_OFF FCC_ON
FCC_BOTH
Surface Types
The following table lists constants to be used for Surface Types. Constant Name Constant Name
FMAP_NONE FMAP_FREE_PARAMETRIC
FMAP_MAP_4CORNER FMAP_MAP_3CORNER
API-124
Constant Name
Constant Name
FMAP_MAP_3CORNERFAN FMAP_MAP_LINKED
FMOF_CENTERLINE FMOF_TOP
FMOF_BOTTOM
FMSH_AUTO FMSH_SUBDIVISION
FMSH_FASTTRI FMSH_3DTRI
Volume Types
The following table lists constants to be used for Volume Types. Constant Name Constant Name
FVO_BRICK FVO_WEDGE
FVO_PYRAMID FVO_TETRA
Node Types
The following table lists constants to be used for Node Types. Constant Name Constant Name
FND_NODE FND_SPOINT
FND_EPOINT
API-125
Material Types
The following table lists constants to be used for Material Types. Constant Name Constant Name
Element Types
The following table lists constants to be used for Element Types. Constant Name Constant Name
API-126
Constant Name
Constant Name
FET_L_SPRING FET_L_DOF_SPRING FET_L_CURVED_BEAM FET_L_GAP FET_L_PLOT FET_L_SHEAR FET_P_SHEAR FET_L_MEMBRANE FET_P_MEMBRANE FET_L_BENDING FET_P_BENDING FET_L_PLATE FET_P_PLATE FET_L_PLANE_STRAIN
FET_P_SOLID FET_L_MASS FET_L_MASS_MATRIX FET_L_RIGID FET_L_STIFF_MATRIX FET_L_CURVED_TUBE FET_L_PLOT_PLATE FET_L_SLIDE_LINE FET_L_CONTACT FET_L_AXISYM_SHELL FET_P_AXISYM_SHELL FET_P_BEAM FET_L_WELD
FSOR_RIGHT FSOR_UP
FSOR_LEFT FSOR_DOWN
API-127
Constant Name
Constant Name
FSHP_CIRC_TUBE FSHP_HEX_BAR FSHP_HEX_TUBE FSHP_I FSHP_C FSHP_L FSHP_T FSHP_Z FSHP_HAT FSHP_NAS_ROD FSHP_NAS_TUBE FSHP_NAS_L
FSHP_NAS_CROSS FSHP_NAS_H FSHP_NAS_T1 FSHP_NAS_I1 FSHP_NAS_CHAN1 FSHP_NAS_Z FSHP_NAS_CHAN2 FSHP_NAS_T2 FSHP_NAS_BOX1 FSHP_NAS_HEXA FSHP_NAS_HAT FSHP_NAS_HAT1
FSEV_AUTO FSEV_ORIG
FSEV_ALT FSEV_PBEAML
FCS_RECTANGULAR FCS_CYLINRICAL
FCS_SPHERICAL
FRT_CONNECTION
FRT_BOLT
API-128
Constant Name
Constant Name
FRT_FLUID
FRT_ROTOR
FCPT_CONTACT
FCPT_GLUED
FLD_NORMALTOPLANE FLD_NORMALTOSURFACE
FLV_FUNCTION FLV_INTERPOLATION
API-129
Load Types
The following table lists constants to be used for Nodal Load Types except for FLT_NBODY which represents a Body Load. Constant Name Constant Name
FLT_NBODY FLT_NFORCE FLT_NMOMENT FLT_NDISPLACEMENT FLT_NROTDISPLACEMENT FLT_NVELOCITY FLT_NROTVELOCITY FLT_NACCELERATION FLT_NROTACCELERATION FLT_NTEMPERATURE FLT_NHEATFLUX FLT_NHEATGEN
FLT_NTRANSIENT FLT_NPRESSURE FLT_NTOTALPRESSURE FLT_NSCALAR FLT_NSTEAMQUALITY FLT_NHUMIDITY FLT_NFLUIDHEIGHT FLT_NUNKNOWNCONDITION FLT_NSLIPCONDITION FLT_NFANCURVE FLT_NPERIODIC
The following table lists constants to be used for Elemental Load Types. Constant Name Constant Name
The following table lists constants to be used for Loads Types on Geometric Points which are expanded to nodes. Constant Name Constant Name
API-130
Constant Name
Constant Name
The following table lists constants to be used for Loads Types on Geometric Curves which are expanded to nodes. Constant Name Constant Name
FLT_CNFORCE FLT_CNFORCEPERLEN FLT_CNFORCEATNODE FLT_CNMOMENT FLT_CNMOMENTPERLEN FLT_CNMOMENTATNODE FLT_CNDISPLACEMENT FLT_CNROTDISPLACEMENT FLT_CNVELOCITY FLT_CNROTVELOCITY FLT_CNACCELERATION FLT_CNROTACCELERATION FLT_CNTEMPERATURE FLT_CNHEATFLUX
FLT_CNHEATFLUXPERLEN FLT_CNHEATFLUXATNODE FLT_CNHEATGEN FLT_CNPRESSURE FLT_CNTOTALPRESSURE FLT_CNSCALAR FLT_CNSTEAMQUALITY FLT_CNHUMIDITY FLT_CNFLUIDHEIGHT FLT_CNUNKNOWNCONDITION FLT_CNSLIPCONDITION FLT_CNFANCURVE FLT_CNPERIODIC
API-131
The following table lists constants to be used for Loads Types on Geometric Curves which are expanded to elements. Constant Name Constant Name
The following table lists constants to be used for Loads Types on Geometric Surfaces which are expanded to nodes. Constant Name Constant Name
FLT_SNFORCE FLT_SNFORCEPERAREA FLT_SNFORCEATNODE FLT_SNMOMENT FLT_SNMOMENTPERAREA FLT_SNMOMENTATNODE FLT_SNDISPLACEMENT FLT_SNROTDISPLACEMENT FLT_SNVELOCITY FLT_SNROTVELOCITY FLT_SNACCELERATION FLT_SNROTACCELERATION FLT_SNTEMPERATURE FLT_SNHEATFLUX
FLT_SNHEATFLUXPERAREA FLT_SNHEATFLUXATNODE FLT_SNHEATGEN FLT_SNPRESSURE FLT_SNTOTALPRESSURE FLT_SNSCALAR FLT_SNSTEAMQUALITY FLT_SNHUMIDITY FLT_SNFLUIDHEIGHT FLT_SNUNKNOWNCONDITION FLT_SNSLIPCONDITION FLT_SNFANCURVE FLT_SNPERIODIC FLT_SNTORQUE
The following table lists constants to be used for Loads Types on Geometric Surfaces which are expanded to elements. Constant Name Constant Name
FLT_SEPRESSURE FLT_SETEMPERATURE
FLT_SECONVECTION FLT_SERADIATION
API-132
Constant Name
Constant Name
FLT_SEHEATFLUX
FLT_SEHEATGEN
FLS_ANY FLS_BODY FLS_NONLINEAR FLS_NHTGEN FLS_NHTFLUX FLS_FORCE FLS_DISP FLS_ACCEL FLS_LINELOAD FLS_VELOCITY FLS_PRESS FLS_EHTGEN FLS_EHTFLUX
FLS_NTEMP FLS_ETEMP FLS_ECONVECTION FLS_ERADIATION FLS_NTRANSIENT FLS_FLPRESSURE FLS_FLTRACKING FLS_FLUNKNOWN FLS_FLSLIP FLS_FLFAN FLS_FLPERIODIC FLS_NONE
Function Types
The following table lists constants to be used for Function Types. Constant Name Constant Name
API-133
Constant Name
Constant Name
MapOutput Constants
The following table lists constants to be used for LoadType that can be mapped from output using MapFromModelToSet method Constant Name Constant Name
The following table lists constants to be used for MapOption that can be used to specify algorithm to map output to loads where meshes do not coincide. These constants are used for the MapFromModelToSet method. Constant Name Constant Name
FMO_INTERP FMO_NONE
The following table lists constants to be used for MapToType that can be used to specify target mapping type. FMP_STANDARD is used if source output is from same entity type (Node or Element) as the desired target load.
API-134
These constants are used for MapFromModelToSet method. Constant Name Constant Name
FMP_STANDARD FMP_NODE
FMP_ELEMENT
The following table lists constants to be used for Data Surface Dimension Constant Name Constant Name
FDM_1D FDM_2D
FDM_3D
FCT_BOOL FCT_INT
FCT_DOUBLE FCT_STRING
The following table lists constants to be used for the Data Table Alignment. Constant Name Constant Name
FAL_LEFT FAL_CENTER
FAL_RIGHT
API-135
The following table lists constants to be used for the Data Table Save to a File Format Constant Name Constant Name
FSF_TEXT FSF_CSV
FSF_RTF
Optimization Constants
The following table lists constants to be used for Optimization Methods. Constant Name Constant Name
FOP_NONE FOP_GOAL
FOP_VARY FOP_LIMIT
The following table lists constants to be used for Optimization Goal Method. Constant Name Constant Name
FOG_NONE
FOG_MINWEIGHT
The following table lists constants to be used for Optimization Vary Method. Constant Name Constant Name
The following table lists constants to be used for Optimization Limit Method. Constant Name Constant Name
API-136
Constant Name
Constant Name
Output Types
The following table lists constants to be used for Output Types. Constant Name Constant Name
FOC_REAL FOC_IMAGINARY
API-137
Constant Name
Constant Name
FOD_PLATE_TO_MATL
FOD_SOLID_TO_MATL
View Modes
The following table lists constants to be used for View Modes. Constant Name Constant Name
View Options
A list of the View Options constants for use with Draw, Label, Color, and ColorMode can be found in Section 5.51.1.1, "View Option Types" with Text in View Options and Index number.
Deformed Formats
The following table lists constants to be used for Deformed Formats . Constant Name Constant Name
Contour Formats
The following table lists constants to be used for Contour Formats . Constant Name Constant Name
API-138
Constant Name
Constant Name
FCF_CRITERIA
FCF_CONTOUR_VECTOR
FGR_CSYS FGR_POINT FGR_CURVE FGR_SURFACE FGR_VOLUME FGR_TEXT FGR_NODE FGR_ELEM FGR_MATL FGR_PROP FGR_NLOAD FGR_ELOAD FGR_BCO
FGR_BEQ FGR_PLOAD FGR_CLOAD FGR_SLOAD FGR_PBCO FGR_CBCO FGR_SBCO FGR_SOLID FGR_CONTACT FGR_CONNECTIONPROP FGR_CONNECTION FGR_LAYUP FGR_REGLOAD
FGD_TEXT_ID FGD_TEXT_BYCOLOR
FGD_TEXT_BYLAYER
The following table lists constants to be used for adding Points to Groups Constant Name Constant Name
FGD_POINT_ID FGD_POINT_BYDEFCSYS
FGD_POINT_BYCOLOR FGD_POINT_BYLAYER
API-139
Constant Name
Constant Name
FGD_POINT_ONCURVE
Constant Name
FGD_POINT_BYPROP
Constant Name
The following table lists constants to be used for adding Curves to Groups
The following table lists constants to be used for adding Surfaces to Groups Constant Name Constant Name
The following table lists constants to be used for adding Boundary Surfaces to Groups Constant Name Constant Name
FGD_BOUNDARY_ID
FGD_BOUNDARY_BYCURVE
The following table lists constants to be used for adding Volumes to Groups Constant Name Constant Name
FGD_VOLUME_BYLAYER FGD_VOLUME_BYPROP
The following table lists constants to be used for adding Solids to Groups Constant Name Constant Name
API-140
The following table lists constants to be used for adding Connection Properties to Groups Constant Name Constant Name
FGD_CONNECTIONPROP_ID FGD_CONNECTIONPROP_BYCOLOR
The following table lists constants to be used for adding Regions to Groups Constant Name Constant Name
FGD_CONNECTION_BYPROP FGD_CONNECTION_BYCONTACT
The following table lists constants to be used for adding Connectors (contact pairs) to Groups. Constant Name Constant Name
The following table lists constants to be used for adding Coordinate Systems to Groups Constant Name Constant Name
The following table lists constants to be used for adding Nodes to Groups. Constant Name Constant Name
API-141
Constant Name
Constant Name
The following table lists constants to be used for adding Elements to Groups.
The following table lists constants to be used for adding Materials to Groups. Constant Name Constant Name
The following table lists constants to be used for adding Properties to Groups. Constant Name Constant Name
The following table lists constants to be used for adding Layups to Groups Constant Name Constant Name
FGD_LAYUP_ID FGD_LAYUP_BYMATL
FGD_LAYUP_ONPROP
API-142
The following table lists constants to be used for adding Loads to Groups. Constant Name Constant Name
The following table lists constants to be used for adding Boundary Conditions to Groups. Constant Name Constant Name
FGD_BCO_BYCURVE FGD_BCO_BYSURFACE
Return Codes
The following table lists constants to be used for Return Codes. These can be helpful when testing and debugging a program created with the FEMAP API. Constant Name Constant Name
API-143
FEMAP Events
The following table lists constants to be used for FEMAP Events. Constant Name Constant Name
FEMAP Colors
The following table lists constants to be used for Colors located in the First Row of the FEMAP color palette..Color Number in Parentheses. Constant Name Constant Name
FCL_BLACK (0) FCL_SEPIA (1) FCL_DARKRED (2) FCL_MAROON (3) FCL_RED (4) FCL_DARKESTGREEN (5) FCL_DARKOLIVEGREEN (6) FCL_BROWN (7) FCL_SIENNA (8) FCL_ORANGERED (9) FCL_GREEN (10) FCL_FERNGREEN (11) FCL_OLIVE (12)
FCL_DARKGOLDENROD (13) FCL_ORANGE (14) FCL_LIMEGREEN (15) FCL_YELLOWLIMEGREEN (16) FCL_AVOCADO (17) FCL_OLIVEYELLOW (18) FCL_GOLD (19) FCL_LIME (20) FCL_BRIGHTLIME (21) FCL_CHARTREUSE (22) FCL_BRIGHTCHARTREUSE (23) FCL_YELLOW (24)
API-144
The following table lists constants to be used for Colors located in the Second Row of the FEMAP color palette.. Constant Name Constant Name
FCL_MIDNIGHTBLUE (25) FCL_EGGPLANT (26) FCL_DARKRASPBERRY (27) FCL_RASPBERRY (28) FCL_CRIMSON (29) FCL_DARKSLATEGRAY (30) FCL_DARKGRAY (31) FCL_CAMOUFLAGEGREEN (32) FCL_FIREBRICK (33) FCL_TOMATO (34) FCL_PINEGREEN (35) FCL_FORESTGREEN (36) FCL_PALEOLIVE (37)
FCL_PERU (38) FCL_CORAL (39) FCL_DARKPASTELGREEN (40) FCL_PALELIMEGREEN (41) FCL_YELLOWGREEN (42) FCL_OLDGOLD (43) FCL_GOLDENROD (44) FCL_BLUELIME (45) FCL_PALELIME (46) FCL_PALEBRIGHTGREEN (47) FCL_GREENYELLOW (48) FCL_NOTEYELLOW (49)
The following table lists constants to be used for Colors located in the Third Row of the FEMAP color palette.. Constant Name Constant Name
FCL_DARKBLUE (50) FCL_INDIGO (51) FCL_PURPLE (52) FCL_MEDIUMVIOLETRED (53) FCL_DEEPPINK (54) FCL_DARKCERULEAN (55) FCL_DARKSLATEBLUE (56) FCL_PALEPURPLE (57) FCL_MAUVE (58)
FCL_ROSYBROWN (63) FCL_LIGHTSALMON (64) FCL_JADE (65) FCL_SEAGREEN (66) FCL_DARKSEAGREEN (67) FCL_DARKKHAKI (68) FCL_SANDYBROWN (69) FCL_SPRINGGREEN (70) FCL_LIGHTSPRINGGREEN (71)
API-145
Constant Name
Constant Name
The following table lists constants to be used for Colors located in the Fourth Row of the FEMAP color palette.. Constant Name Constant Name
FCL_MEDIUMBLUE (75) FCL_BLUEINDIGO (76) FCL_DARKVIOLET (77) FCL_VIOLETEGGPLANT (78) FCL_FUCHSIA (79) FCL_COBALT (80) FCL_PALEBLUEPURPLE (81) FCL_MEDIUMPURPLE (82) FCL_ORCHID (83) FCL_PINKCERISE (84) FCL_CERULEAN (85) FCL_STEELBLUE (86) FCL_SLATEBLUE (87)
FCL_PLUM (88) FCL_REDPINK (89) FCL_DARKTURQUOISE (90) FCL_MEDIUMTURQUOISE (91) FCL_MEDIUMAQUAMARINE (92) FCL_SILVER (93) FCL_PALEREDVIOLET (94) FCL_MEDIUMSPRINGGREEN (95) FCL_TURQUOISE (96) FCL_AQUAMARINE (97) FCL_MINTCREAM (98) FCL_LEMONCHIFFON (99)
The following table lists constants to be used for Colors located in the Fifth Row of the FEMAP color palette.. Constant Name Constant Name
API-146
Constant Name
Constant Name
FCL_BRIGHTVIOLET (103) FCL_MAGENTA (104) FCL_BRIGHTCOBALT (105) FCL_PALECOBALT (106) FCL_BLUEVIOLET (107) FCL_MEDIUMORCHID (108) FCL_HOTPINK (109) FCL_DODGERBLUE (110) FCL_ROYALBLUE (111) FCL_MEDIUMSLATEBLUE (112)
FCL_SKYBLUE (116) FCL_PALESKYBLUE (117) FCL_THISTLE (118) FCL_PALEPINK (119) FCL_CYAN (120) FCL_BRIGHTTURQUOISE (121) FCL_PALEBLUE (122) FCL_POWDERBLUE (123) FCL_WHITE (124)
The following table lists constants to be used for Colors located in the Grayscale Row of the FEMAP color palette.. Constant Name Constant Name
FCL_GRAY10 (125) FCL_GRAY20 (126) FCL_GRAY30 (127) FCL_GRAY40 (128) FCL_GRAY50 (129) FCL_GRAY60 (130) FCL_GRAY70 (131) FCL_GRAY80 (132) FCL_GRAY90 (133) FCL_GRAY100 (134) FCL_GRAY110 (135) FCL_GRAY120 (136) FCL_GRAY130 (137)
FCL_GRAY140 (138) FCL_GRAY150 (139) FCL_GRAY160 (140) FCL_GRAY170 (141) FCL_GRAY180 (142) FCL_GRAY190 (143) FCL_GRAY200 (144) FCL_GRAY210 (145) FCL_GRAY220 (146) FCL_GRAY230 (147) FCL_GRAY240 (148) FCL_GRAY250 (149)
API-147
FPF_TRANSPARENT4.
Constant Name
Constant Name
FPRG_WINDOW FPRG_LAYOUT
FPRG_DESKTOP
API-148
PPFM_GIF PPFM_TIF
PAFM_BMP PAFM_BMPSERIES
PAFM_AVI PAFM_GIF
GIFC_NET GIFC_OCTREE
GIFC_DITHER
API-149
FCM_ERROR FCM_COMMAND
API-150
Constant Name
Constant Name
FVD_TANGENT
FVD_AXIS_OF_SURFACE
Selector Constants
The Selector (Select Toolbar) is used to create Selection sets in FEMAP which may contain different entity types and can also be used to load entities into the Data Table and Entity Editor. The following table lists constants to be used for the Selector Entity Type. Constant Name Constant Name
FS_POINT FS_CURVE FS_SURFACE FS_SOLID FS_CONNECTION_PROP FS_CONNECTION_REGION FS_CONNECTION FS_CSYS FS_NODE FS_ELEM FS_MATL FS_PROP
FS_LOAD_NODAL FS_LOAD_ELEMENTAL FS_LOAD_ON_POINT FS_LOAD_ON_CURVE FS_LOAD_ON_SURFACE FS_BC_NODAL FS_BC_EQUATION FS_BC_ON_POINT FS_BC_ON_CURVE FS_BC_ON_SURFACE FS_TEXT
API-151
The following table lists constants to be used for Selector Pick (Drill) Method Constant Name Constant Name
FSD_OFF FSD_QUERY
FSD_FRONT
FRFM_NORMAL FRFM_EXPONENTIAL
FRFM_NASTRAN
API-152
3.4 File Methods
The File Methods include:
Section 3.4.1, "File Open/Exit" Section 3.4.2, "File Save" Section 3.4.3, "Import Geometry" Section 3.4.4, "Import Analysis Model" Section 3.4.5, "Import Analysis Results" Section 3.4.6, "Import/Export Neutral File" Section 3.4.7, "Export Geometry" Section 3.4.8, "Export Analysis Model" Section 3.4.9, "Notes" Section 3.4.10, "Print and Copy" Section 3.4.11, "Rebuild and Preferences"
feFileNew
API-153
feFileNew
( void ) Description: This function starts a new model. It works like the File, New command. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: In releases prior to v9, this API function required 2 arguments because multiple models were not supported and the previous model needed to be closed prior to opening the new model. Example: None Unable to create a new file.
API-154
feFileOpen
3.4.1.2 feFileOpen
feFileOpen
( useDlg, fName ) Description: This function opens an existing model, or starts a new model and loads the contents of a file in one of the supported analysis formats. It works like the File, Open command. Input: BOOL useDlg If True, fName is ignored and the standard dialog boxes are displayed allowing the user to choose a model to open. If False, the model specified in fName is opened. The filename of the file to be opened. In general, this name should be specified with a complete path. If no path is supplied, the file will be opened from the current FEMAP directory.
STRING fName
Output: None Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: feFileOpen( True, wing.mod ) - interactive use, even though you specified a filename, it will not be opened - the user will be asked to choose a model. feFileNew( False, C:\Models\Bracket.mod ) - Opens the model C:\Models\Bracket.mod without asking for user input. Example: None Unable to open file. Specified file does not exist.
feFileClose
API-155
3.4.1.3 feFileClose
feFileClose
( saveChanges ) Description: This function closes the active model Input: BOOL saveChanges Output: None Return Code: None Remarks/Usage: This function will always display a dialog box asking for a filename if you are saving changes to a model that has never been saved previously. To prevent this, you must either discard the changes, or save the model prior to calling this method. Example: None If True, any changes in the model will be saved. If False, the model will simply close, discarding any changes.
API-156
feFileExit
3.4.1.4 feFileExit
feFileExit
( void ) Description: This function causes FEMAP to exit. Input: None Output: None Return Code: None Remarks/Usage: This function will always display a dialog box asking for confirmation to save the current model unless it has not been modified since the last save. Therefore, to exit with no user interaction, you must either use one of the FileSave functions or feFileNew immediately prior to calling this function. Example: None
feFileSave
API-157
feFileSave
( useDlg ) Description: This function saves the current model to the current model name, like the File, Save command. Input: BOOL useDlg If True, the function runs interactively. In this mode, if the model name has not been specified, the Save As dialog will be displayed to allow you to choose the name. If a model filename has been specified, the model will simply be saved. If False, the model will be saved if the filename has been selected, or the function will fail if the model has never been saved before.
Output: None Return Code: FE_FAIL FE_NO_FILENAME Remarks/Usage: None Example: None The save operation failed. Either the filename specified cannot be written, or some other error occurred during the save operation. useDlg=False and the model name has never been specified. Use feFileSaveAs instead to specify a name to be used to save the model.
API-158
feFileSaveAs
3.4.2.2 feFileSaveAs
feFileSaveAs
( useDlg, fName ) Description: This function saves the current model, like the File, Save As command. The filename can either be specified or chosen interactively. Input: BOOL useDlg If True, the filename to be used to save the current model will be chosen interactively by display the Save As dialog box. If False, operation is automatic and the fName parameter must be specified. The filename to use to save the current model. This is only used if useDlg=False.
STRING fName Output: None Return Code: FE_FAIL FE_CANCEL FE_INVALID Remarks/Usage:
The save operation failed. Either the filename specified cannot be written, or some other error occurred during the save operation. useDlg=True and the user cancelled the save operation. The filename is not valid to save the model.
feFileSaveAs( True, ) - ask the user for a filename and save the current model to that file. feFileSaveAs( False, c:\models\car.mod ) - automatically save the current model to the specified file. Example: None
feFileTimedSave
API-159
3.4.2.3 feFileTimedSave
feFileTimedSave
( useDlg, saving, notify, interval, commands ) Description: This function controls whether or not timed save is turned on, and sets the available parameters for timed save operation. It works like the File, Timed Save command. Input: BOOL useDlg If True, the function runs interactively and displays the dialog box displayed by the File, Timed Save command. In this case, all other parameters are ignored. If False, the other parameters automatically define the timed save options. Turns on/off timed save ( True = on, False = off). If this is on, then the user will be notified prior to a timed save taking place. Time in minutes between timed saves ( 1..999 ). Number of commands between timed saves ( 0, 1..999 ). If you set this to 0, then timed saves will be done based on time only.
BOOL saving BOOL notify INT4 interval INT4 commands Output: None Return Code: FE_CANCEL FE_INVALID Remarks/Usage:
The user aborted the operation by cancelling a dialog box. At least one of the arguments contains data that is invalid or out of the allowable range.
Calling this function automatically stops any previous timed save operations. When the function is complete, if timed save is turned on, it is reinitialized. Example: None
API-160
feFileReadAcisOpt
feFileReadAcisOpt
( useDlg, fName, title, layer, color, increment_layer, increment_color, assign_color, convert_to_splines, convert_format, clean, heal, check, stringent, delete_invalid, faces, scale ) Description: This function loads geometry from an ACIS .SAT file. It works like File, Import, Geometry, when you pick an ACIS file. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the ACIS read options. The filename/path of the ACIS file to be read. The title that is assigned to created layers and the solid. The ID of the layer for new geometry. Set to -1 to use the active layer. The color used for the geometry that is created. Set to -1 to use the active solid color. Only used if assign_color=True If True and you read an assembly, geometry for each solid is placed on a different layer; otherwise all geometry is on the specified layer. If True and you read an assembly, geometry for each solid is colored differently. If True, the specified color value is used for geometry; otherwise the default colors are used. If True, surfaces are all converted to B-Spline surfaces. If False, surfaces retain their original definition. Should always be set to True. ACIS geometry can no longer be read in native format - it is always converted to Parasolid. Only used if convert_format=True. If True, this attempts to detect and remove sliver faces or other geometric problems. Only used if convert_format=True. If True, attempts to close gaps and correct geometric inaccuracies. Only used if convert_format=True. If True, checks converted Parasolid geometry to find and report any problems.
STRING fName STRING title INT4 layer INT4 color BOOL increment_layer BOOL increment_color BOOL assign_color BOOL convert_to_splines BOOL convert_format BOOL clean BOOL heal BOOL check
feFileReadAcisOpt
API-161
feFileReadAcisOpt
( useDlg, fName, title, layer, color, increment_layer, increment_color, assign_color, convert_to_splines, convert_format, clean, heal, check, stringent, delete_invalid, faces, scale ) BOOL stringent BOOL delete_invalid BOOL faces Only used if convert_format=True. If True, checks for surface discontinuities or irregularities in the converted Parasolid geometry. Only used if convert_format=True. If True and geometry was checked, this deletes any geometry that failed the checking. Only used if convert_format=True. If True and it was not possible to convert a complete solid, this will allow unstitched, free surfaces to be retained. Only used if convert_format=True. This is a scale factor that is applied to the geometry during conversion. It is used to ensure that the geometry lies inside the Parasolid modeling box (+/- 500 units).
REAL8 scale
Output: None Return Code: FE_CANCEL FE_INVALID FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: In general, you will not want to convert geometry to Parasolid format. In that case, all of the parameters after convert_format are ignored. Example: None The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
API-162
feFileReadAcis
3.4.3.2 feFileReadAcis
feFileReadAcis
( fName ) Description: Short form of feFileReadAcisOpt( ). Input: STRING fName Remarks/Usage: Using this function is equivalent to calling: feFileReadAcisOpt( FALSE, fName, "", -1, -1, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, 1.0 ) For details, see Section 3.4.3.1, "feFileReadAcisOpt". Example: None The filename/path of the ACIS file to be read.
feFileReadCatia
API-163
3.4.3.3 feFileReadCatia
feFileReadCatia
( useDlg, fName, rdAnalytical, rdTopology, rdCurves, stitch, heal ) Description: This function loads geometry from a CATIA (.model, mdl, .exp) file. It works like File, Import, Geometry, when you pick a CATIA file. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the CATIA read options. The filename/path of the CATIA file to be read. Set to True to read the analytical definition for surfaces defined as splines. Set to True to read the CATIA topology to create a solid. Generally, it is better to set to False to read the surfaces as individual surfaces. Set to True to read 3D trimming curves, or False to read 2D trimming curves. Set to True to automatically stitch surfaces into a solid. If False, individual surfaces will be read. Set to True to attempt to repair tolerance and gap problems.
STRING fName BOOL rdAnalytical BOOL rdTopology BOOL rdCurves BOOL stitch BOOL heal Output: None Return Code: FE_CANCEL FE_INVALID FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example: None
The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
API-164
feFileReadCatiaV5
3.4.3.4 feFileReadCatiaV5
feFileReadCatiaV5
( useDlg, fName, fPath, rdNoShow, rdInactiveLayers, rdPoints, rdCurves, rdSurfaces, rdBodies, simplify ) Description: This function loads geometry from a CATIA V5 (.CATpart or .CATproduct) file. It works like File, Import, Geometry, when you pick a CATIA V5 file. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. The fName and fPath options can not be set using this method, other options set the defaults for the dialog box. If False, the other parameters automatically define the CATIA V5 read options. The filename/path of the CATIA V5 file to be read. The search path for other assembly parts. If all parts are in the same directory as the file you specify, you can pass this as a blank string. If you need to search multiple directories, you must separate the paths with semicolons in this string. If True, reads No Show geometry. If True, reads geometry from layers marked as Inactive. Set to True to read points Set to True to read curves Set to True to read surfaces Set to True to read bodies If True, simplifies the underlying geometry for curves and surfaces
BOOL rdNoShow BOOL rdInactiveLayers BOOL rdPoints BOOL rdCurves BOOL rdSurfaces BOOL rdBodies BOOL simplify Output: None Return Code: FE_CANCEL FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example:
The user aborted the operation by cancelling a dialog box. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
feFileReadCatiaV5
API-165
feFileReadCatiaV5
( useDlg, fName, fPath, rdNoShow, rdInactiveLayers, rdPoints, rdCurves, rdSurfaces, rdBodies, simplify ) None
API-166
feFileReadDxf
3.4.3.5 feFileReadDxf
feFileReadDxf
( useDlg, fName, rdText, rd3DFace, rdBlocks, rdPolyelem, rdTraceBoundary, rdTraceCenterline, rdLayer, firstLayer, mergePoints, mergeDist ) Description: This function loads geometry (and other entities) from a DXF formatted file. It works like File, Import, Geometry, when you pick a DXF file. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the DXF read options. The filename/path of the DXF file to be read. If True, reads text or notes. Skipped if False. If True, reads 3DFaces as elements. If False, lines are created to form the outline of the face. If True, entities inside block references will be read. If True, reads polygon meshes as elements. If True, creates lines to represent the edges of a traceline. If True, creates lines to represent the center of a traceline. If True, reads color and layer information and assigns it to the geometry. If rdLayer=True, this is the ID of the first layer that will be created. A unique layer is created for each unique layer name in the DXF file. If True, coincident points will be merged after geometry is read. If mergePoints=True, this is the distance used to determine coincident points. Points that are closer than this distance from each other will be merged.
STRING fName BOOL rdText BOOL rd3DFace BOOL rdBlocks BOOL rdPolyelem BOOL rdTraceBoundary BOOL rdTraceCenterline BOOL rdLayer INT4 firstLayer BOOL mergePoints REAL8 mergeDist
Output: None Return Code: FE_CANCEL FE_INVALID The user aborted the operation by cancelling a dialog box. You specified an layer that was not in the supported range.
feFileReadDxf
API-167
feFileReadDxf
( useDlg, fName, rdText, rd3DFace, rdBlocks, rdPolyelem, rdTraceBoundary, rdTraceCenterline, rdLayer, firstLayer, mergePoints, mergeDist ) Remarks/Usage: None Example: None
API-168
feFileReadIdeas
3.4.3.6 feFileReadIdeas
feFileReadIdeas
( fName ) Description: This function loads geometry from an I-DEAS (.IDI) file. It works like File, Import, Geometry, when you pick an I-DEAS file. The file is loaded into the current model. Input: STRING fName Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example: None The required module for this function is not loaded on this system. The required module for this function is not properly licensed. The filename/path of the I-DEAS file to be read.
feFileReadIgesAdv
API-169
3.4.3.7 feFileReadIgesAdv
feFileReadIgesAdv
( useDlg, fName, read_curves, read_untrimmed_surfaces, read_trimmed_surfaces, read_solids, flavor, trim_curve_option ) Description: This function loads geometry from a IGES (.IGS) file. It works like File, Import, Geometry, when you pick an IGES file, and choose the Alternate/Advanced interface. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the IGES read options. The filename/path of the IGES file to be read. Set to True to read free curves (curves that are not connected to surfaces or solids). Set to True to read free untrimmed surfaces. Set to True to read free trimmed surfaces. Set to True to read solid data. =0 for No flavoring, =1 for AutoCAD customization (old versions of AutoCAD only). =0 for default trim curves, =1 for 2D trim curves, =2 for 3D trim curves
STRING fName BOOL read_curves BOOL read_untrimmed_surfaces BOOL read_trimmed_surfaces BOOL read_solids INT4 flavor INT4 trim_curve_option Output: None Return Code: FE_CANCEL FE_INVALID FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage:
The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
If you are having trouble reading solid data, try turning off read_solids, and just read the trimmed surfaces. These surfaces can then be stitched into a solid.
API-170
feFileReadIgesAdv
feFileReadIgesAdv
( useDlg, fName, read_curves, read_untrimmed_surfaces, read_trimmed_surfaces, read_solids, flavor, trim_curve_option ) Example: None
feFileReadIges
API-171
3.4.3.8 feFileReadIges
feFileReadIges
( useDlg, fName, merge_points, read_layer, read_geom_only, read_surface_data, trim_preference, min_resolution ) Description: This function loads geometry from a IGES (.IGS) file. It works like File, Import, Geometry, when you pick an IGES file, and you do not choose the Alternate/Advanced interface. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the IGES read options. The filename/path of the IGES file to be read. Set to True to merge all coincident points that are created. Set to True to read layer information and assign geometry to the appropriate layers. Set to True to only read data marked as geometry. Set to True to read trimmed surface data. If you set this to True, you must have the appropriate license. =0 for Default Trim curves per the IGES file specification. =1 for 2D trim curves, =2 for 3D trim curves. Set to the minimum resolution for coincident points in the file. Used for tolerances of surface data, and for merging coincident points.
STRING fName BOOL merge_points BOOL read_layer BOOL read_geom_only BOOL read_surface_data INT4 trim_preference REAL8 min_resolution Output: None Return Code: FE_CANCEL FE_SECURITY Remarks/Usage: None Example: None
The user aborted the operation by cancelling a dialog box. The required module for this function is not properly licensed.
API-172
feFileReadParasolidOpt
3.4.3.9 feFileReadParasolidOpt
feFileReadParasolidOpt
( useDlg, fName, title, layer, color, increment_layer, increment_color, assign_color, convert_format, clean, heal, check, stringent, delete_invalid, faces, scale ) Description: This function loads geometry from a Parasolid .X_T file. It works like File, Import, Geometry, when you pick a Parasolid file. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the Parasolid read options. The filename/path of the Parasolid file to be read. The title that is assigned to created layers and the solid. The ID of the layer for new geometry. Set to -1 to use the active layer. The color used for the geometry that is created. Set to -1 to use the active solid color. Only used if assign_color=True. If True and you read an assembly, geometry for each solid is placed on a different layer; otherwise, all geometry is on the specified layer. If True and you read an assembly, geometry for each solid is colored differently. If True, the specified color value is used for geometry; otherwise, the default colors are used. Should always be set to False. Parasolid geometry can no longer be converted to ACIS format. Only used if convert_format=True. If True, this attempts to detect and remove sliver faces or other geometric problems. Only used if convert_format=True. If True, attempts to close gaps and correct geometric inaccuracies. Only used if convert_format=True. If True, checks converted ACIS geometry to find and report any problems. Only used if convert_format=True. If True, checks for surface discontinuities or irregularities in the converted ACIS geometry. Only used if convert_format=True. If True and geometry was checked, this deletes any geometry that failed the checking.
STRING fName STRING title INT4 layer INT4 color BOOL increment_layer BOOL increment_color BOOL assign_color BOOL convert_format BOOL clean BOOL heal BOOL check BOOL stringent BOOL delete_invalid
feFileReadParasolidOpt
API-173
feFileReadParasolidOpt
( useDlg, fName, title, layer, color, increment_layer, increment_color, assign_color, convert_format, clean, heal, check, stringent, delete_invalid, faces, scale ) BOOL faces Only used if convert_format=True. If True and it was not possible to convert a complete solid, this will allow unstitched, free surfaces to be retained. Only used if convert_format=True. This is a scale factor that is applied to the geometry during conversion. It is used to ensure that the geometry lies inside the ACIS modeling box.
REAL8 scale
Output: None Return Code: FE_CANCEL FE_INVALID FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: In general, you will not want to convert geometry to ACIS format. In that case, all of the parameters after convert_format are ignored. Example: None The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
API-174
feFileReadParasolid
3.4.3.10 feFileReadParasolid
feFileReadParasolid
( fName ) Description: Short form of feFileReadParasolidOpt( ). Input: STRING fName Remarks/Usage: Using this function is equivalent to calling: feFileReadParasolidOpt( FALSE, fName, "", -1, -1, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, 1.0 ) For more detailed documentation, see Section 3.4.3.9, "feFileReadParasolidOpt". Example: None The filename/path of the Parasolid file to be read.
feFileReadProe
API-175
3.4.3.11 feFileReadProe
feFileReadProe
( fName ) Description: This function loads geometry from a Pro/E (.PRT) file. It works like File, Import, Geometry, when you pick a Pro/E file. The file is loaded into the current model. Input: STRING fName Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example: None The required module for this function is not loaded on this system. The required module for this function is not properly licensed. The filename/path of the Pro/E file to be read.
API-176
feFileReadSolidEdge
3.4.3.12 feFileReadSolidEdge
feFileReadSolidEdge
( fName ) Description: This function loads geometry from a Solid Edge (.PAR) file. It works like File, Import, Geometry, when you pick a Solid Edge file. The file is loaded into the current model. Input: STRING fName Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example: None The required module for this function is not loaded on this system. The required module for this function is not properly licensed. The filename/path of the Solid Edge file to be read.
feFileReadStepOpt
API-177
3.4.3.13 feFileReadStepOpt
feFileReadStepOpt
( useDlg, fName, title, layer, color, increment_layer, increment_color, assign_color, class_VI, class_V, class_IV, class_III, class_II_wf, class_II_curv, class_II_rect, class_II_2d, smooth_g1, explode, analytics, stitch, closed_orient, pro_e, check_input, check_output ) Description: This function loads geometry from a STEP (.STP) file. It works like File, Import, Geometry, when you pick a STEP file. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the STEP read options. The filename/path of the STEP file to be read. The title that is assigned to created layers and the solid. The ID of the layer for new geometry. Set to -1 to use the active layer. The color used for the geometry that is created. Set to -1 to use the active solid color. Only used if assign_color=True. If True and you read an assembly, geometry for each solid is placed on a different layer; otherwise all geometry is on the specified layer. If True and you read an assembly, geometry for each solid is colored differently. If True, the specified color value is used for geometry; otherwise, the default colors are used. Set to True if you want to read Class VI solids. Set to True if you want to read Class V faceted solids. Set to True if you want to read Class IV surfaces. Set to True if you want to read Class III wireframe - edge based and shell based wireframe geometry. Set to True if you want to read Class II wireframe - wireframe without topology or other underlying surfaces. Set to True if you want to read Class II curve bounded surfaces.
STRING fName STRING title INT4 layer INT4 color BOOL increment_layer BOOL increment_color BOOL assign_color BOOL class_VI BOOL class_V BOOL class_IV BOOL class_III BOOL class_II_wf BOOL class_II_curv
API-178
feFileReadStepOpt
feFileReadStepOpt
( useDlg, fName, title, layer, color, increment_layer, increment_color, assign_color, class_VI, class_V, class_IV, class_III, class_II_wf, class_II_curv, class_II_rect, class_II_2d, smooth_g1, explode, analytics, stitch, closed_orient, pro_e, check_input, check_output ) BOOL class_II_rect Set to True if you want to read Class II rectangular trimmed surfaces. Normally this is False, because these surfaces are usually used for construction geometry, not part geometry. Set to True to read 2D trimming curves for surfaces. These are curves in the surface parametric coordinates. If you set this to False, 3D trimming curves will be read. If True, attempts to eliminate discontinuities in the STEP geometry which cannot be represented in Parasolid. Set this to True for the best conversion. If True, STEP geometry will be read as independent faces, then Parasolid will be used to restitch the solid. If False, the topology will be constructed directly from the data in the STEP file. Setting this to True will help to eliminate geometric tolerancing problems. If True, geometry will be simplified to analytical surfaces whenever possible. If True, surfaces will be stitched into a solid. If True, extra checking is done to eliminate problems that can occur in closed analytical (sphere and torus) surfaces that produce complementary surfaces. If True, forces angle units to degrees to work around a problem in old Pro/E STEP files. Always set to False unless you are having specific problems with Pro/E files. If True, syntax checking of the STEP file is done prior to reading. If True, the Parasolid geometry is checked for validity after the conversion.
BOOL class_II_2d
BOOL smooth_g1
BOOL explode
BOOL pro_e
BOOL check_input BOOL check_output Output: None Return Code: FE_CANCEL FE_INVALID FE_NOT_AVAILABLE FE_SECURITY
The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
feFileReadStepOpt
API-179
feFileReadStepOpt
( useDlg, fName, title, layer, color, increment_layer, increment_color, assign_color, class_VI, class_V, class_IV, class_III, class_II_wf, class_II_curv, class_II_rect, class_II_2d, smooth_g1, explode, analytics, stitch, closed_orient, pro_e, check_input, check_output ) Remarks/Usage: None Example: None
API-180
feFileReadStep
3.4.3.14 feFileReadStep
feFileReadStep
( fName ) Description: Short form of feFileReadStepOpt( ). Input: STRING fName Remarks/Usage: Using this function is equivalent to calling: feFileReadStepOpt( FALSE, fName, "", -1, -1, FALSE, TRUE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, TRUE, FALSE, FALSE, TRUE, FALSE, FALSE, TRUE, FALSE ) For more detailed documentation, see Section 3.4.3.13, "feFileReadStepOpt". Example: None The filename/path of the STEP file to be read.
feFileReadStl
API-181
3.4.3.15 feFileReadStl
feFileReadStl
( useDlg, fName, skip_short_edges, merge_nodes, close_gaps, PATRAN_file, min_distance ) Description: This function loads geometry from a Stereolithography (.STL) file. It works like File, Import, Geometry, when you pick an STL file. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the STL read options. The filename/path of the STL file to be read. Set to True to skip edges that are shorter than the min_distance setting. Set to True to merge all coincident nodes after the file is loaded. Set to True to attempt to close gaps in the STL mesh. Set to True to read a PATRAN generated STL file where negative coordinates can run together with no spaces between them. The minimum distance of short edges to be skipped.
STRING fName BOOL skip_short_edges BOOL merge_nodes BOOL close_gaps BOOL PATRAN_file REAL8 min_distance Output: None Return Code: FE_CANCEL FE_INVALID FE_FAIL Remarks/Usage: None Example: None
The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. An error occurred while reading the file.
API-182
feFileReadUg
3.4.3.16 feFileReadUg
feFileReadUg
( useDlg, fName, rdBlanked, rdLayers ) Description: This function loads geometry from a Unigraphics (.PRT) file. It works like File, Import, Geometry, when you pick a Unigraphics file. The file is loaded into the current model. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. Only the fName option is used; all others are ignored. If False, the other parameters automatically define the Unigraphics read options. The filename/path of the Unigraphics file to be read. Set to True to read parts that are blanked. If False, only unblanked parts will be read. Set to True to read parts that are on invisible layers. If False, only parts on visible layers will be read.
STRING fName BOOL rdBlanked BOOL rdLayers Output: None Return Code: FE_CANCEL FE_INVALID FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example: None
The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
feFileReadAbaqus
API-183
feFileReadAbaqus
( brand, fName ) Description: This function loads finite element model data from an existing ABAQUS file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid value for the brand option. Used to select the format of the ABAQUS file. 0=Abaqus Input File (.INP), 1=Abaqus Results File (.FIL) The filename of the ABAQUS input file to read.
API-184
feFileReadAnsys
3.4.4.2 feFileReadAnsys
feFileReadAnsys
( brand, fName ) Description: This function loads finite element model data from an existing ANSYS file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid value for the brand option. Used to select the format of the ANSYS input file. 4 = Version 4, 5 = Version 5+. The filename of the ANSYS input file to read.
feFileReadDyna
API-185
3.4.4.3 feFileReadDyna
feFileReadDyna
( brand, fName ) Description: This function loads finite element model data from an existing LS-DYNA file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid value for the brand option. Used to select the format of the DYNA file. Currently this MUST be specified as 1=DYNA Results file. The filename of the DYNA file to read.
API-186
feFileReadMarc
3.4.4.4 feFileReadMarc
feFileReadMarc
( brand, fName ) Description: This function loads finite element model data from an existing Marc file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid value for the brand option. Used to select the format of the Marc file. Currently this MUST be specified as 1=Marc Results file. The filename of the Marc file to read.
feFileReadNastran
API-187
3.4.4.5 feFileReadNastran
feFileReadNastran
( brand, fName ) Description: This function loads finite element model data from an existing NASTRAN file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid value for the brand option. Used to select the format of the NASTRAN input file: 0=MSC, 1=NE, 2=UAI, 3=CSA, 4=SSS, 5=Cosmic, 6=ME, 7=VR, 8=NX. The filename of the NASTRAN input file to read.
API-188
feFileReadPatran
3.4.4.6 feFileReadPatran
feFileReadPatran
( fName, bSaveZeroDispAsBC ) Description: This function loads finite element model data from an existing Patran file. Input: STRING fName BOOL bSaveZeroDispAsBC Output: None Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The file you specified does not exist. The filename of the Patran input file to read. If True, Zero Nodal Displacements are stored as Constraints. If False, they are stored as loads.
feFileReadAbaqusResults
API-189
feFileReadAbaqusResults
( brand, fName ) Description: This function loads finite element results data from an existing ABAQUS file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid value for the brand option. Used to select the format of the ABAQUS file. Currently this MUST be specified as 1=Abaqus Results file. The filename of the ABAQUS results file to read.
API-190
feFileReadAnsysResults
3.4.5.2 feFileReadAnsysResults
feFileReadAnsysResults
( brand, fName ) Description: This function loads finite element results data from an existing ANSYS file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: This function can read results files from structural (.RST) and thermal analyses (.RTH). Example: None You specified an invalid value for the brand option. Used to select the format of the ANSYS results file. 4 = Version 4, 5 = Version 5..9, 10 = 10 and up. The filename of the ANSYS results file to read.
feFileReadDynaResults
API-191
3.4.5.3 feFileReadDynaResults
feFileReadDynaResults
( brand, fName ) Description: This function loads finite element results data from an existing LS-DYNA file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid value for the brand option. Used to select the format of the DYNA file. Currently this MUST be specified as 1=DYNA Results file. The filename of the DYNA results file to read.
API-192
feFileReadMarcResults
3.4.5.4 feFileReadMarcResults
feFileReadMarcResults
( brand, fName ) Description: This function loads finite element results data from an existing Marc file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid value for the brand option. Used to select the format of the Marc file. Currently this MUST be specified as 1=Marc Results file. The filename of the Marc file to read.
feFileReadNastranResults
API-193
3.4.5.5 feFileReadNastranResults
feFileReadNastranResults
( brand, fName ) Description: This function loads finite element results data from an existing NASTRAN file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: This function can read both NASTRAN printed results file (.F06) or OUTPUT2 files (.OP2). Example: None You specified an invalid value for the brand option. Used to select the format of the NASTRAN results file: 0=MSC, 1=NE, 2=UAI, 3=CSA, 4=SSS, 5=Cosmic, 6=ME, 7=VR, 8=NX. The filename of the NASTRAN results file to read.
API-194
feFileReadNeutral
feFileReadNeutral
( brand, fName, read_geometry, read_model, read_output, status_messages, offsetID ) Description: This method is the same as calling feFileReadNeutral2 with read_groups and read_views equal to read_model. Refer to that method for more information.
3.4.6.2 feFileReadNeutral2
feFileReadNeutral2
( brand, fName, read_geometry, read_model, read_output, read_groups, read_views, status_messages, offsetID ) Description: This method is the same as calling feFileReadNeutral3 with renumber_layers and renumber_load_bc set to True, and create_new_output set to False.
3.4.6.3 feFileReadNeutral3
feFileReadNeutral3
( brand, fName, read_geometry, read_model, read_output, read_groups, read_views, status_messages, offsetID, renumber_layers, renumber_load_bc, create_new_output ) Description: This function reads a FEMAP Neutral file. Input: INT4 brand STRING fName BOOL read_geometry BOOL read_model BOOL read_output BOOL read_groups BOOL read_views BOOL status_messages Used to select the format of the Neutral file. Not currently used. The filename of the Neutral file to read. If True, geometry is read from the file. If True, finite element model data is read from the file. If True, analysis results will be read from the file. If True, groups will be read from the file. If True, views will be read from the file. If True, status messages will be written to the Messages and Lists window to show how many entities are read.
feFileReadNeutral3
API-195
feFileReadNeutral3
( brand, fName, read_geometry, read_model, read_output, read_groups, read_views, status_messages, offsetID, renumber_layers, renumber_load_bc, create_new_output ) INT4 offsetID BOOL renumber_layers BOOL renumber_load_bc BOOL create_new_output Normally set to 0. If you specify another value, all IDs that are read are offset by this value. If True, layers will be renumbered by the offsetID along with the rest of the model. If False, they are not renumbered. If True, Load and Constraint sets are renumbered by offsetID along with the rest of the model. If False, they are not renumbered. If True, Output Sets are never overwritten - new ones are always created. The Output Set IDs in the file are used to determine the order in which they are created - the ID is added to the previous maximum Output Set ID in the model. For example, if your model already contained Output Sets up to 10, then if you read Output Set 1 it would be stored as 11, Set 2 would become 12 and so on. If your model did not contain output, this option has no effect.
API-196
feFileWriteNeutral
3.4.6.4 feFileWriteNeutral
feFileWriteNeutral
( brand, fName, write_geometry_model, write_analysis_model, write_output, write_addl_info, expand_geometric, minimize_size, digits, version, groupID ) Description: This method is the same as calling feFileWriteNeutral2 with write_selector and write_palette equal to True, and write_groups and write_views equal to write_analysis_model. Refer to that method for more information.
3.4.6.5 feFileWriteNeutral2
feFileWriteNeutral2
( brand, fName, write_geometry_model, write_analysis_model, write_output, write_selector, write_palette, write_groups, write_views, write_addl_info, expand_geometric, minimize_size, digits, version, groupID ) Description: This function writes a FEMAP Neutral file. Input: INT4 brand Used to select the format of the Neutral file: 0=FEMAP Neutral (the default), 1=CAEFEM, 2=CDA/Sprint, 3=CFDesign, 4=SINDA. The formats other than 0 should not be used unless you are writing a file specifically to be used with that program. The filename of the Neutral file to write. If True, geometry is written to the file. If True, finite element model data is written to the file. If True, analysis results will be written to the file. If True, selector information will be written to the file If True, color palette information will be written to the file If True, groups will be written to the file If True, views will be written to the file If True, some additional data blocks will be written to the file. This should normally be False if the Neutral file is to be reloaded into FEMAP. If True, geometric loads and constraints will be expanded before being written. If True, spaces are compressed out of the file to reduce its size.
STRING fName BOOL write_geometry_model BOOL write_analysis_model BOOL write_output BOOL write_selector BOOL write_palette BOOL write_groups BOOL write_views BOOL write_addl_info
feFileWriteNeutral2
API-197
feFileWriteNeutral2
( brand, fName, write_geometry_model, write_analysis_model, write_output, write_selector, write_palette, write_groups, write_views, write_addl_info, expand_geometric, minimize_size, digits, version, groupID ) INT4 digits REAL8 version The number of digits of precision for all real numbers (must be 2 to 20). The version of the Neutral file to produce. Set to 0.0 to create the latest version. If you do not use 0.0, some model data may not be compatible with the file you write and will be lost. The ID of the group to write to the file. Specify 0 to write the entire model.
INT4 groupID Output: None Return Code: FE_INVALID FE_NOT_EXIST FE_FAIL Remarks/Usage: None Example: None
You specified an invalid value for digits. You chose a group that does not exist. An error occurred processing the group.
API-198
feFileWriteAcis
feFileWriteAcis
( useDlg, fName, version, solidSET ) Description: This function writes solids from your model into a ACIS SAT file. Input: BOOL useDlg STRING fName REAL8 version If True, the function runs interactively. The dialog box that asks you to pick the solids to write will be displayed. The filename of the ACIS SAT file to write. The ACIS version number of the file to be written. Set this to 0 to use the current version of ACIS. Available previous versions are the same numbers as displayed in the dialog box when you run the File, Export, Geometry command. The ID of a selection set that contains the IDs of the solids to write. Alternatively, if you specify a negative value, this is simply the ID of the single solid to write. Not used if useDlg=True.
INT4 solidSET
feFileWriteIges
API-199
3.4.7.2 feFileWriteIges
feFileWriteIges
( fName, spline_curves, spline_surfaces, bounded_surfaces, customization, surface_options, export_as, solidSET ) Description: This function writes selected solids to an IGES file. Input: STRING fName BOOL spline_curves BOOL spline_surfaces BOOL bounded_surfaces INT4 customization INT4 surface_options INT4 export_as INT4 solidSET The filename of the IGES file to write. If True, all curves are written as splines. If True, surfaces are written as splines. If True, surfaces will be written as Type 143, bounded surfaces. Otherwise, Type 144 trimmed surfaces will be written. Controls the IGES customization options: 0=None, 1=AutoCAD, 2=JAMA-IS, 3=I-DEAS. Controls how trimming curves will be written: 0=Both, 1=2D Curves, 2=3D Curves. Controls how to write solids: 0=Solid MSBO, 1=Trimmed Surfaces, 2=Wireframe. The ID of a selection set that contains the IDs of the solids to write. Alternatively, if you specify a negative value, this is simply the ID of the single solid to write.
Output: None Return Code: FE_CANCEL FE_INVALID FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: Only Parasolid solids can be written to an IGES file. Example: None The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
API-200
feFileWriteParasolid
3.4.7.3 feFileWriteParasolid
feFileWriteParasolid
( useDlg, fName, version, solidSET ) Description: This function writes solids from your model into a Parasolid X_T file. Input: BOOL useDlg STRING fName REAL8 version If True, the function runs interactively. The dialog box that asks you to pick the solids to write will be displayed. The filename of the Parasolid X_T file to write. The Parasolid version number of the file to be written. Set this to 0 to use the current version of Parasolid. Available previous versions are the same numbers as displayed in the dialog box when you run the File, Export, Geometry command. The ID of a selection set that contains the IDs of the solids to write. Alternatively, if you specify a negative value, this is simply the ID of the single solid to write. Not used if useDlg=True.
INT4 solidSET
feFileWriteStep
API-201
3.4.7.4 feFileWriteStep
feFileWriteStep
( fName, solidSET ) Description: This function writes selected solids to a STEP file. Input: STRING fName INT4 solidSET The filename of the STEP file to write. The ID of a selection set that contains the IDs of the solids to write. Alternatively, if you specify a negative value, this is simply the ID of the single solid to write.
Output: None Return Code: FE_CANCEL FE_INVALID FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example: None The user aborted the operation by cancelling a dialog box. You specified a parameter that was not in the supported range. The required module for this function is not loaded on this system. The required module for this function is not properly licensed.
API-202
feFileWriteStl
3.4.7.5 feFileWriteStl
feFileWriteStl
( fName, elemSET ) Description: This function writes elements, or the faces of elements (solids) into a stereolithography (STL) file. Input: STRING fName INT4 elemSET The filename of the STL file to write. The ID of a selection set that contains the IDs of the elements to write. Alternatively, if you specify a negative value, this is simply the ID of the single element to write.
Output: None Return Code: None Remarks/Usage: All entities written to the STL file are in the form of triangles. Any quadrilateral faces that are selected are split into two triangles. Faces with midside nodes are split into multiple triangles. Planar elements are written as-is, while solid elements are combined and only their free-faces are written. Example: None
feFileWriteVrml
API-203
3.4.7.6 feFileWriteVrml
feFileWriteVrml
( fName, version, write_solid, single_color, write_deformed, write_contour, write_background, background_color, color, solidSET ) Description: This function writes either elements or solids to a VRML file. Input: STRING fName REAL8 version BOOL write_solid The filename of the VRML file to write. Either 1.0 or 2.0. Specifies the version of VRML to write. If True, the solids selected in solidSET will be written to the VRML file; otherwise, the elements displayed in the active view will be written. If True, all entities are written in the color specified. If True and elements are written and the current view style is deformed, then the geometry written is in its deformed location. If True and elements are written and the current view style is contour, then the geometry written will include contour information. If True, a plane representing the background is written along with the model geometry. If the background is written, this is its color. If single_color=True, this is the color used for all entities. If write_solid=True, then this is the ID of a selection set that contains the solids to write. Alternatively, you can specify a negative number that will be the ID of a single solid to write.
BOOL single_color BOOL write_deformed BOOL write_contour BOOL write_background INT4 background_color INT4 color INT4 solidSET
Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None One of the color values is outside of its acceptable range.
API-204
feFileWriteAbaqus
feFileWriteAbaqus
( brand, fName ) Description: This function writes an ABAQUS input file. Input: INT4 brand STRING fName Output: None Return Code: None Remarks/Usage: This function will display dialog boxes to collect whatever data that it needs to complete the file. If you have an active analysis set that selects ABAQUS as the solver, then no dialog boxes will be displayed. The global variable Pref_AnalysisType is used to determine the type of analysis that is to be performed by the file. Example: None Not currently used. The filename of the ABAQUS input file to write.
feFileWriteAnsys
API-205
3.4.8.2 feFileWriteAnsys
feFileWriteAnsys
( brand, fName ) Description: This function writes an ANSYS input file. Input: INT4 brand STRING fName Output: None Return Code: None Remarks/Usage: This function will display dialog boxes to collect whatever data that it needs to complete the file. The global variable Pref_AnalysisType is used to determine the type of analysis that is to be performed by the file. Example: None Not currently used. The filename of the ANSYS input file to write.
API-206
feFileWriteDyna
3.4.8.3 feFileWriteDyna
feFileWriteDyna
( brand, fName ) Description: This function writes an LS-DYNA input file. Input: INT4 brand STRING fName Output: None Return Code: None Remarks/Usage: This function will display dialog boxes to collect whatever data that it needs to complete the file. The global variable Pref_AnalysisType is used to determine the type of analysis that is to be performed by the file. Example: None Not currently used. The filename of the DYNA file to write.
feFileWriteMarc
API-207
3.4.8.4 feFileWriteMarc
feFileWriteMarc
( brand, fName ) Description: This function writes a Marc input file. Input: INT4 brand STRING fName Output: None Return Code: None Remarks/Usage: This function will display dialog boxes to collect whatever data that it needs to complete the file. The global variable Pref_AnalysisType is used to determine the type of analysis that is to be performed by the file. Example: None Not currently used. The filename of the Marc file to read.
API-208
feFileWriteNastran
3.4.8.5 feFileWriteNastran
feFileWriteNastran
( brand, fName ) Description: This function writes a NASTRAN input file. Input: INT4 brand STRING fName Output: None Return Code: FE_INVALID Remarks/Usage: This function will display dialog boxes to collect whatever data that it needs to complete the file. If you have an active analysis set that selects NASTRAN as the solver, then no dialog boxes will be displayed. The global variable Pref_AnalysisType is used to determine the type of analysis that is to be performed by the file. Example: None You specified an invalid value for the brand option. Used to select the format of the NASTRAN file. 0=MSC, 1=NE, 2=UAI, 3=CSA, 4=SSS, 5=Cosmic, 6=ME, 7=VR, 8=NX. The filename of the NASTRAN input file to write.
feNotesGet
API-209
3.4.9 Notes
3.4.9.1 feNotesGet
feNotesGet
( noteSET, notes ) Description: This function retrieves the currently defined model notes. Input: INT4 noteSET Output: STRING notes Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: This function automatically allocates/reallocates the string for the returned notes. Notes can contain multiple lines and will have carriage return (CR) and linefeed (LF) characters between the lines. It is the responsibility of the calling program to free the memory allocated to the returned string. Example: None An error occurred allocating the notes string. There are no currently defined notes. The string containing the notes. =1 for Model Notes, =2 for Translation Text
API-210
feNotesPut
3.4.9.2 feNotesPut
feNotesPut
( noteSET, clear, notes ) Description: This function updates the currently defined model notes. Input: INT4 noteSET BOOL clear STRING notes Output: None Return Code: FE_FAIL Remarks/Usage: If you want to create notes with multiple lines, you must add carriage return (CR) and linefeed (LF) characters between the lines. For example, from Basic, you could use: s = "First Line" & Chr(13) & Chr(10) & "Second Line" rc = femap.feNotesPut(1, True, s) Example: None An error occurred creating the notes. =1 for Model Notes, =2 for Translation Text If True, any existing notes are deleted before these notes are added; otherwise, this function appends to the current notes. The string containing the notes to add.
feFilePageSetupSave
API-211
feFilePageSetupSave
( void ) Description: This function permanently saves the current page setup settings. It is the same as pressing the Permanent button in the Page Setup command. Input: None Output: None Return Code: None Remarks/Usage: None Example: None
API-212
feFilePageSetupReset
3.4.10.2 feFilePageSetupReset
feFilePageSetupReset
( void ) Description: This function sets all of the page setup settings back to their default values. It is the same as pressing the Reset button in the Page Setup command. Input: None Output: None Return Code: None Remarks/Usage: None Example: None
feFilePrint
API-213
3.4.10.3 feFilePrint
feFilePrint
( useDlg, asBitmap, source, fromFile, toFile ) Description: This function is obsolete. You should use feFilePrint2( ) instead This function invokes the printing function. It can be used to print data that is in the current session, or saved in a file. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. If False, the other parameters automatically define the printing options. If True, printing is done at screen (bitmap) resolution. If False, printing is in printer resolution. Selects the data to print. (Active View=0, Desktop=1, File=2, MultiView Layout=3, Messages=4, Program File=5, Entity Info=6, API Programming=7, Data Table=8) Only used if source=2, print from file. In this case, this is the full pathname of the file to print. Complete path/filename of print destination. If blank, print will go to the current printer.
STRING fromFile STRING toFile Output: None Return Code: FE_CANCEL FE_FAIL Remarks/Usage: None Example: None
API-214
feFilePrint2
3.4.10.4 feFilePrint2
feFilePrint2
( useDlg, source, toFile ) Description: This function invokes the printing function. Input: BOOL useDlg If True, the function runs interactively and displays a dialog box to allow the user to define the options. If False, the other parameters automatically define the printing options. Selects the data to print. (Active View=0, Desktop=1, File=2, MultiView Layout=3, Messages=4, Program File=5, Entity Info=6, API Programming=7, Data Table=8) Complete path/filename of print destination. If blank, print will go to the current printer.
INT4 source
STRING toFile Output: None Return Code: FE_CANCEL FE_FAIL Remarks/Usage: None Example: None
feFilePictureCopy
API-215
3.4.10.5 feFilePictureCopy
feFilePictureCopy
( void ) Description: This function copies the contents of the current Graphics window to the clipboard. Input: None Output: None Return Code: None Remarks/Usage: This method is obsolete. For new applications you should use feFilePictureCopy2( ) If you are copying a bitmap, then view that you are copying must be visible on the screen. If it is partially or fully obscured by other applications, then the picture that you copy will not be correct. Example: None
API-216
feFilePictureCopy2
3.4.10.6 feFilePictureCopy2
feFilePictureCopy2
( saveRegion ) Description: This function copies portions of the screen to the clipboard. Input: INT4 saveRegion Output: None Return Code: None Remarks/Usage: If you are copying a bitmap, then view that you are copying must be visible on the screen. If it is partially or fully obscured by other applications, then the picture that you copy will not be correct. Example: None 0=Graphics Window, 1=Layout, 2=Entire Desktop
feFilePictureSave
API-217
3.4.10.7 feFilePictureSave
feFilePictureSave
( useDlg, saveDesktop, format, fName ) Description: This function copies the contents of the current Graphics window (or the entire desktop) to a file. Input: BOOL useDlg BOOL saveDesktop If True, this function runs interactively and displays a dialog box to ask the user to define the format and fName options. If True, the entire desktop (screen) is copied to the file. If False, only the contents of the active Graphics window are copied. If you are copying the desktop, the only valid formats are Bitmap, JPEG, PNG, GIF, and TIFF The format of the file to create. 1=Bitmap, 2=Metafile, 3=Placeable Metafile, 4=JPEG, 5=Bitmap Series, 6=AVI, 7=JT, 8=Reserved for internal use, 9=GIF, 10=Animated GIF, 11=TIF, 12=PNG. Bitmap Series, Animated GIF, and AVI formats are only available for animating windows. Metafiles and Placeable Metafiles are only available for non-Render windows. The name of the file to create.
INT4 format
This method is obsolete - you should use feFilePictureSave2 for new applications. If you are saving a bitmap, then view that you are saving must be visible on the screen. If it is partially or fully obscured by other applications, then the file that you create will not be correct. Example: None
API-218
feFilePictureSave2
3.4.10.8 feFilePictureSave2
feFilePictureSave2
( useDlg, saveRegion, format, fName ) Description: This function copies the contents of the current Graphics window (or the entire desktop) to a file. Input: BOOL useDlg INT32 saveRegion INT4 format If True, this function runs interactively and displays a dialog box to ask the user to define the format and fName options. 0=Graphics Window, 1=Layout, 2=Entire Desktop The format of the file to create. 1=Bitmap, 2=Metafile, 3=Placeable Metafile, 4=JPEG, 5=Bitmap Series, 6=AVI, 7=JT, 8=Reserved for internal use, 9=GIF, 10=Animated GIF, 11=TIF, 12=PNG. Bitmap Series, Animated GIF, and AVI formats are only available for animating windows. Metafiles and Placeable Metafiles are only available for non-Render windows. The name of the file to create.
If you are saving a bitmap, then view that you are saving must be visible on the screen. If it is partially or fully obscured by other applications, then the file that you create will not be correct. Example: None
feFilePictureReplay
API-219
3.4.10.9 feFilePictureReplay
feFilePictureReplay
( fName ) Description: This function replays an existing bitmap or metafile. Input: STRING fName Output: None Return Code: FE_FAIL Remarks/Usage: This function displays the picture using the FEMAP Replay program, which is launched in a separate window. There is no function available to automatically close this replay window. The Replay program can only replay bitmaps and metafiles. Other picture file formats can be saved, but cannot be replayed using this method. Example: None An error occurred replaying the picture - most likely the file does not exist. The name of the picture to replay - must be a bitmap or metafile.
API-220
feFileMessageCopy
3.4.10.10 feFileMessageCopy
feFileMessageCopy
( void ) Description: This function copies the selected messages from the Messages and Lists window to the clipboard. Input: None Output: None Return Code: None Remarks/Usage: If no messages are selected, then all messages will be copied; otherwise, only the selected ones are copied. Example: None
feFileMessageSave
API-221
3.4.10.11 feFileMessageSave
feFileMessageSave
( useDlg, fName ) Description: This function copies the selected messages to a file. Input: BOOL useDlg STRING fName Output: None Return Code: FE_FAIL Remarks/Usage: If no messages are selected, then all messages will be copied; otherwise, only the selected ones are copied. Example: None An error occurred saving the file. If True, this function runs interactively and displays a dialog box to ask the user to define the filename. The name of the file to create.
API-222
feFileMessageSelect
3.4.10.12 feFileMessageSelect
feFileMessageSelect
( firstLine, lastLine ) Description: This function selects the specified lines in the Messages and Lists window. Input: INT4 firstLine INT4 lastLine Output: None Return Code: FE_INVALID Remarks/Usage: If either firstLine or lastLine are -1, the selection will be reset - no lines will be selected. Setting firstLine = 0, will automatically select starting at the first available line. Setting lastLine = 0 will automatically select up to the last available line. You can use the global integer Message_LineNumber to retrieve the current line number in the Messages and Lists window. You can then save this value and later use it as a line number to select. Example: None One of the line numbers that you selected was outside of the range of lines that are available. The line number of the first line of text to be selected. The line number of the last line of text to be selected.
feFileMessageLineNumber
API-223
3.4.10.13 feFileMessageLineNumber
feFileMessageLineNumber
( nLine ) Description: This function returns the line number of the last line currently in the message window Input: None Output: INT4 nLine Return Code: FE_INVALID Remarks/Usage: You can use this function to retrieve the current line number in the Messages and Lists window. You can then save this value and later use it as a line number to call feFileMessageSelect. Example: None Either the message window is closed or the last line can not be retrieved. The line number of the last line in the message window
API-224
feFileRebuild
feFileRebuild
( useDlg, fullRebuild ) Description: This function is similar to the File,Rebuild command. It rebuilds the current FEMAP database and checks it for integrity. Input: BOOL useDlg If True, this function runs interactively and displays a dialog box to ask whether to do a full or partial rebuild. An additional dialog box may also be displayed if solid geometry is found that cannot be loaded. Only used if useDlg=False. If True, a full rebuild is performed and all internal database pointers are reconstructed. If False, a partial rebuild is performed. This simply checks data references to make sure that all required entities still exist, and resets all usage counters.
BOOL fullRebuild
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None An error occurred during rebuild. Some data is missing or corrupted. (or the rebuild was cancelled if useDlg=True)
feFilePreferencesSave
API-225
3.4.11.2 feFilePreferencesSave
feFilePreferencesSave
( void ) Description: This function permanently saves the current preference settings. It is the same as saving the preferences when you leave the File, Preferences command. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This command does not allow you to change the preference settings. All preference settings can be accessed and changed using global variables. You should change the settings that you want to modify, then call this function to make those changes permanent. Example: None A problem occurred trying to save the settings.
API-226
feFilePreferencesReset
3.4.11.3 feFilePreferencesReset
feFilePreferencesReset
( void ) Description: This function permanently resets the preference settings back to their default values. It is the same as pressing the Reset button in the File, Preferences command. Input: None Output: None Return Code: None Remarks/Usage: None Example: None
feRunIOTest
API-227
3.4.11.4 feRunIOTest
feRunIOTest
( sPath, nMethod ) Description: This function runs the Read/Write Test found in the Database tab of the File, Preferences command. Input: STRING sPath Output: INT4 nMethod Return Code: None Remarks/Usage: None Example: None Preferred result of test. 0=Windows I/O, 1=C I/O, 2=Windows 64K I/O, or 3=C 64K I/O. Directory path to the current Scratch directory, where the test will take place.
API-228
3.5 Tool Methods
Tool Methods include:
Section 3.5.1, "Units" Section 3.5.2, "Variables" Section 3.5.3, "Layers" Section 3.5.4, "Text" Section 3.5.5, "Measure" Section 3.5.6, "Checks"
feToolUnitConvertFactors
API-229
3.5.1 Units
3.5.1.1 feToolUnitConvertFactors
feToolUnitConvertFactors
( baseMult, baseAdd, factorMult, factorAdd ) Description: This function computes the computed factors to use in a unit conversion of the current model. Input: REAL8 baseMult[0..5] REAL8 baseAdd[0..5] Output: REAL8 factorMult[0..25] REAL8 factorAdd[0..25] Return Code: FE_TOO_SMALL FE_NOT_AVAILABLE FE_INVALID FE_BAD_TYPE Remarks/Usage: For baseMult[ ] and baseAdd[ ] the array indices are: 0=Length, 1=Force, 2=Time, 3=Mass, 4=Temperature, 5=Energy For factorMult[ ] and factorAdd[ ], the array indices are: 0=Length, 1=Area, 2=Inertia, 3=Force, 4=Moment, 5=Spring, 6=SpringRot, 7=Pressure, 8=Acceleration, 9=AccelRot, 10=VelocityRot, 11=Damping, 12=DampingRot, 13=Mass, 14=Mass-Len, 15=MassPerLen, 16=MassPerArea, 17=Density, 18=MassInertia, 19=Temperature, 20=ThermalExpansion, 21=ThermConductivity, 22=SpecificHeat, 23=HeatGenRate, 24=Velocity, 25=EnergyPerMass This method can be called prior to calling feToolUnitConvert to compute the factor arrays needed for that method. Example: None One of the arrays has dimensions that are too small to be used where you specified it. One of the arrays does not contain the required data. Data in the input arrays is outside the acceptable bounds. Data in the input arrays is not of the correct type (e.g. REAL8 or INT4). Computed factors used to multiply dimensions Computed factors added to converted dimensions. Base factors used to multiply dimensions. Base factors added to converted dimensions.
API-230
feToolUnitConvert
3.5.1.2 feToolUnitConvert
feToolUnitConvert
( baseMult, baseAdd, factorMult, factorAdd ) Description: This function converts the units of the current model. Input: REAL8 baseMult[0..5] REAL8 baseAdd[0..5] REAL8 factorMult[0..25] REAL8 factorAdd[0..25] Output: None Return Code: FE_TOO_SMALL FE_NOT_AVAILABLE FE_INVALID FE_BAD_TYPE Remarks/Usage: For baseMult[ ] and baseAdd[ ] the array indices are: 0=Length, 1=Force, 2=Time, 3=Mass, 4=Temperature, 5=Energy For factorMult[ ] and factorAdd[ ], the array indices are: 0=Length, 1=Area, 2=Inertia, 3=Force, 4=Moment, 5=Spring, 6=SpringRot, 7=Pressure, 8=Acceleration, 9=AccelRot, 10=VelocityRot, 11=Damping, 12=DampingRot, 13=Mass, 14=Mass-Len, 15=MassPerLen, 16=MassPerArea, 17=Density, 18=MassInertia, 19=Temperature, 20=ThermalExpansion, 21=ThermConductivity, 22=SpecificHeat, 23=HeatGenRate, 24=Velocity, 25=EnergyPerMass You can use the feToolUnitConvertFactors( ) method to automatically compute values for factorMult and factorAdd prior to calling this method. Example: None One of the arrays has dimensions that are too small to be used where you specified it. One of the arrays does not contain the required data. Data in the input arrays is outside the acceptable bounds. Data in the input arrays is not of the correct type (e.g. REAL8 or INT4). Base factors used to multiply dimensions. Base factors added to converted dimensions. Computed factors used to multiply dimensions Computed factors added to converted dimensions.
feVarPut
API-231
3.5.2 Variables
3.5.2.1 feVarPut
feVarPut
( varName, evalEqn, setConst, varValue, varEqn ) Description: This function adds a variable/equation to the model. Input: STRING varName BOOL evalEqn BOOL setConst REAL8 varValue STRING varEqn Output: None Return Code: FE_BAD_DATA FE_INVALID Remarks/Usage: Normally you will not specify both evalEqn=True and setConst=True, but if you do, evalEqn is done first. Your original varEqn will be evaluated to find a constant which will then overwrite the original equation. Example: None The equation that you specified in varEqn cannot be evaluated. You specified an invalid variable name. Specifies the name of the variable to define. Must follow normal FEMAP variable naming conventions - start with a letter, unique to 5 characters. If True, the varEqn equation is evaluated to compute varValue. If True, the varValue value is converted to a text string and used as a constant equation in varEqn. Current evaluated value for the variable. Should be the current value of the equation specified. The defining equation for the variable.
API-232
feVarGet
3.5.2.2 feVarGet
feVarGet
( varName, varValue, varEqn ) Description: This function retrieves a variable including its current value and defining equation. Input: STRING varName Output: REAL8 varValue STRING varEqn Return Code: FE_NOT_EXIST FE_INVALID Remarks/Usage: None Example: None The variable name that you specified has not been defined. You specified an invalid variable name. Current evaluated value for the variable. The defining equation for the variable. Specifies the name of the variable to retrieve. Must follow normal FEMAP variable naming conventions - start with a letter, unique to 5 characters.
feVarEval
API-233
3.5.2.3 feVarEval
feVarEval
( varEqn, varValue ) Description: This function evaluates an equation. Input: STRING varEqn Output: REAL8 varValue Return Code: FE_BAD_DATA Remarks/Usage: This function does not store its results or create any variables. It simply evaluates the expression that you supply. Example: None The equation cannot be evaluated. Evaluated value for the equation. The equation to be evaluated. This string can follow the syntax of any equation that you can define in FEMAP, including the use of functions and other variables.
API-234
3.5.3 Layers
feLayerPut
3.5.3.1 feLayerPut
feLayerPut
( layID, layColor, layTitle ) Description: This function creates or updates a layer. Input: INT4 layID INT4 layColor STRING layTitle Output: None Return Code: None Remarks/Usage: None Example: None The ID of the layer to create or update. The color used for the layer that is created. Set to -1 to use the active layer color. The title to be used for the layer.
feLayerGet
API-235
3.5.3.2 feLayerGet
feLayerGet
( layID, layColor, layTitle ) Description: This function retrieves information about a layer. Input: INT4 layID Output: INT4 layColor STRING layTitle Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The layer that you requested has not been defined. The layer color. The title of the layer. The ID of the layer to create or update.
API-236
3.5.4 Text
feTextPut
3.5.4.1 feTextPut
feTextPut
( textID, drawPointer, drawBorder, modelPos, horzJust, vertJust, visView, layer, fontID, backColor, bordColor, textColor, textLoc, pointerLoc, text) Description: This function creates or updates a text annotation. Input: INT4 textID BOOL drawPointer BOOL drawBorder BOOL modelPos INT4 horzJust INT4 vertJust INT4 visView INT4 layer INT4 fontID INT4 backColor INT4 bordColor INT4 textColor REAL8 textLoc[0..2] REAL8 pointerLoc[0..2] STRING text Output: None Return Code: None The ID of the text entity to create or update. If True, a pointer will be drawn from the text to a location that you specify in pointerLoc. If True, a border will be drawn around the text. If True, both the textLoc and pointerLoc are in global Cartesian model coordinates. If False, they are in screen coordinates. The horizontal justification: 0=Center, 1=Left, 2=Right. The vertical justification: 0=Center, 1=Top, 2=Bottom. Specifies the views where the text will be visible: -1=All Views, 0=Currently Active View, >0=Specified View ID. The layer attribute for the text. The ID of the font for the text. Same fonts as in the Tools, Text command. The color of the background of the border (if drawBorder=True). The color of the edge of the border (if drawBorder=True). The color of the text. The location of the text. If in model coordinates, the X,Y,Z coordinates in global Cartesian. If in screen, the X and Y screen coordinates. In this case, the third coordinate should always be 0.0 The location of the tip of the pointer. The text to create.
feTextPut
API-237
feTextPut
( textID, drawPointer, drawBorder, modelPos, horzJust, vertJust, visView, layer, fontID, backColor, bordColor, textColor, textLoc, pointerLoc, text) Remarks/Usage: If you want to create text with multiple lines, you must add carriage return (CR) and linefeed (LF) characters between the lines. For example, from Basic, you could use: s = "First Line" & Chr(13) & Chr(10) & "Second Line" Example: None
API-238
feTextMultiPut
3.5.4.2 feTextMultiPut
feTextMultiPut
( drawPointer, drawBorder, modelPos, horzJust, vertJust, visView, layer, fontID, backColor, bordColor, textColor, nCount, textLoc, pointerLoc, text) Description: This function creates multiple text annotations. Input: BOOL drawPointer BOOL drawBorder BOOL modelPos INT4 horzJust INT4 vertJust INT4 visView INT4 layer INT4 fontID INT4 backColor INT4 bordColor INT4 textColor INT4 nCount If True, a pointer will be drawn from the text to a location that you specify in pointerLoc. If True, a border will be drawn around the text. If True, both the textLoc and pointerLoc are in global Cartesian model coordinates. If False, they are in screen coordinates. The horizontal justification: 0=Center, 1=Left, 2=Right. The vertical justification: 0=Center, 1=Top, 2=Bottom. Specifies the views where the text will be visible: -1=All Views, 0=Currently Active View, >0=Specified View ID. The layer attribute for the text. The ID of the font for the text. Same fonts as in the Tools, Text command. The color of the background of the border (if drawBorder=True). The color of the edge of the border (if drawBorder=True). The color of the text. The number of text items to create. This value specifies the number of entries in the remaining parameters The location of the text. If in model coordinates, the X,Y,Z coordinates in global Cartesian. If in screen, the X and Y screen coordinates. In this case, the third coordinate should always be 0.0. Entries in this array are stored [Text1X,Text1Y,Text1Z,Text2X,...TextNZ] The location of the tip of the pointer. Stored the same as textLoc. The text items to create. Each string creates a unique Text entity.
REAL8 textLoc[0..3*nCount1] REAL8 pointerLoc[0..3*nCount-1] STRING text[0..nCount-1] Output: None Return Code:
feTextMultiPut
API-239
feTextMultiPut
( drawPointer, drawBorder, modelPos, horzJust, vertJust, visView, layer, fontID, backColor, bordColor, textColor, nCount, textLoc, pointerLoc, text) None Remarks/Usage: If you want to create text with multiple lines, you must add carriage return (CR) and linefeed (LF) characters between the lines. For example, from Basic, you could use: s = "First Line" & Chr(13) & Chr(10) & "Second Line" Example: Sub Main Dim App As femap.model Set App = feFemap() Dim xyz(8) As Double Dim t(2) As String Dim n As femap.Node Set n = App.feNode() n.Get(1) xyz(0) = n.x xyz(1) = n.y xyz(2) = n.z n.Get(2) xyz(3) = n.x xyz(4) = n.y xyz(5) = n.z n.Get(3) xyz(6) = n.x xyz(7) = n.y xyz(8) = n.z t(0) = "AA" t(1) = "This is" & Chr(13) & Chr(10) & "Multi line" t(2) = "XYZDEF" App.feTextMultiPut ( False, False, True, 0, 0, -1, 1, 2, FCL_RED, FCL_BLUE, FCL_RED, 3, xyz, xyz, t ) End Sub
API-240
feTextGet
3.5.4.3 feTextGet
feTextGet
( textID, drawPointer, drawBorder, modelPos, horzJust, vertJust, visView, layer, fontID, backColor, bordColor, textColor, textLoc, pointerLoc, text) Description: This function retrieves a text entity. Input: INT4 textID Output: BOOL drawPointer BOOL drawBorder BOOL modelPos INT4 horzJust INT4 vertJust INT4 visView INT4 layer INT4 fontID INT4 backColor INT4 bordColor INT4 textColor REAL8 textLoc[0..2] REAL8 pointerLoc[0..2] STRING text Return Code: FE_NOT_EXIST Remarks/Usage: None The text entity that you requested does not exist. The status of the pointer (True=On). The status of the border (True=On). If True, both the textLoc and pointerLoc are in global Cartesian model coordinates. If False, they are in screen coordinates. The horizontal justification: 0=Center, 1=Left, 2=Right. The vertical justification: 0=Center, 1=Top, 2=Bottom. Specifies the views where the text will be visible: -1=All Views, 0=Currently Active View, >0=Specified View ID. The layer attribute for the text. The ID of the font for the text. Same fonts as in the Tools, Text command. The color of the background of the border (if drawBorder=True). The color of the edge of the border (if drawBorder=True). The color of the text. The location of the text. If in model coordinates, the X,Y,Z coordinates in global Cartesian. If in screen, the X and Y screen coordinates. In this case the third coordinate should always be 0.0. The location of the tip of the pointer. The text. If there are multiple lines of text, there will be carriage return and linefeed characters in the string. The ID of the text entity to create or update.
feTextGet
API-241
feTextGet
( textID, drawPointer, drawBorder, modelPos, horzJust, vertJust, visView, layer, fontID, backColor, bordColor, textColor, textLoc, pointerLoc, text) Example: None
API-242
feMeasureDistance
3.5.5 Measure
3.5.5.1 feMeasureDistance
feMeasureDistance
( p1, p2, dist ) Description: This function measures the distance between two coordinates. Input: REAL8 p1[0..2] REAL8 p2[0..2] Output: REAL8 dist Return Code: None Remarks/Usage: The coordinate locations must be in the same rectangular coordinate system for this function to work properly - preferably in global rectangular. Example: None The distance between the coordinate locations. The first coordinate location. The second coordinate location.
feMeasureDistanceToPlane
API-243
3.5.5.2 feMeasureDistanceToPlane
feMeasureDistanceToPlane
( p1, planePt, planeNorm, dist ) Description: This function measures the distance between a coordinate location and a plane. The distance is the length of the perpendicular projection onto the plane. Input: REAL8 p1[0..2] REAL8 planePt[0..2] REAL8 planeNorm[0..2] Output: REAL8 dist Return Code: None Remarks/Usage: The coordinate locations and components must be in the same rectangular coordinate system for this function to work properly - preferably in global rectangular. Example: None The distance from the coordinate location to its projection onto the plane. The coordinate location. The coordinates of any point on the plane. The components of the perpendicular vector to the plane.
API-244
feMeasureDistanceBetweenNodes
3.5.5.3 feMeasureDistanceBetweenNodes
feMeasureDistanceBetweenNodes
( nFrom, nTo, nOutSetID, nOutVecID, nCSysID, vecBase, vecDist, magDist ) Description: This function measures the distance between two nodes which are optionally deformed using selected results. Input: INT4 nFrom INT4 nTo INT4 nOutSetID INT4 nOutVecID INT4 nCSysID Output: REAL8 vecBase[0..2] REAL8 vecDist[0..2] REAL8 magDist Return Code: FE_NOT_AVAILABLE FE_INVALID FE_NOT_EXIST Remarks/Usage: None Example: None Selected results Set/Vector do not exist No output available for one or more of the nodes in the selected results vector. One or more of the nodes does not exist The coordinates of the nFrom node (possibly deformed) in CSys nCSysID The components of the vector from nFrom to nTo in CSys nCSysID The distance between the nodes The ID of the node to measure from The ID of the node to measure to The ID of the output set which contains the results to use to deform the nodes. If 0, use the undeformed location of the nodes. The ID of the output vector in nOutSetID which contains the results to use to deform the nodes. If 0, use the undeformed locations. The ID of the coordinate system in which the results are returned.
feMeasureDistanceBetweenLines
API-245
3.5.5.4 eMeasureDistanceBetweenLines
feMeasureDistanceBetweenLines
( pA1, pA2, pB1, pB2, dist ) Description: This function measures the minimum distance between two line segments in space which are specified by the coordinates of their endpoints. Input: REAL8 pA1[0..2] REAL8 pA2[0..2] REAL8 pB1[0..2] REAL8 pB2[0..2] Output: REAL8 dist Return Code: None Remarks/Usage: The coordinate locations must be in the same rectangular coordinate system for this function to work properly - preferably in global rectangular. The minimum distance will be the perpendicular distance if the closest point of approach lies within the lengths of the segments. If it does not, then the distance will be the distance from one of the endpoints to the other line. Example: None The minimum distance between the two line segments. The coordinates at the first end of the first line. The coordinates at the second end of the first line. The coordinates at the first end of the second line. The coordinates at the second end of the second line.
API-246
feMeasureAngle
3.5.5.5 feMeasureAngle
feMeasureAngle
( center, p1, p2, angle ) Description: This function measures the angle between three coordinate locations. Input: REAL8 center[0..2] REAL8 p1[0..2] REAL8 p2[0..2] Output: REAL8 angle Return Code: None Remarks/Usage: The coordinate locations must be in the same rectangular coordinate system for this function to work properly - preferably in global rectangular. The center location is the point about which the angle is measured. The angle is the angle between the vector from the center to p1 and the vector from the center to p2. The angle returned is always less than 180 degrees. There is no indication of the direction swept by the angle. Example: None The angle between the coordinate locations (in degrees). The coordinates of the center location. The first coordinate location. The second coordinate location.
feMeasureAngleBetweenNodes
API-247
3.5.5.6 feMeasureAngleBetweenNodes
feMeasureAngleBetweenNodes
( nVertex, nFrom, nTo, nOutSetID, nOutVecID, nCSysID, vecBase, vecNormal, magAngle ) Description: This function measures the angle between three coordinate locations. Input: INT4 nVertex INT4 nFrom INT4 nTo INT4 nOutSetID INT4 nOutVecID INT4 nCSysID Output: REAL8 vecBase[0..2] REAL8 vecNormal[0..2] REAL8 magAngle Return Code: None Remarks/Usage: None Example: None The coordinates of the nVertex node (possibly deformed) in CSys nCSysID The components of the vector that is normal to the plane formed by the three (possibly deformed) nodes, in CSys nCSysID The angle between the nodes The ID of a node at the vertex of the angle The ID of a node to measure the angle from The ID of a node to measure the angle to The ID of the output set which contains the results to use to deform the nodes. If 0, use the undeformed location of the nodes. The ID of the output vector in nOutSetID which contains the results to use to deform the nodes. If 0, use the undeformed locations. The ID of the coordinate system in which the results are returned.
API-248
feMeasureCurve
3.5.5.7 feMeasureCurve
feMeasureCurve
( curveSET, totalLength ) Description: This function measures the length of one or more curves. Input: INT4 curveSET Output: REAL8 totalLength Return Code: None Remarks/Usage: The total length of the curves is simply the sum of the lengths of the individual curves, it does not account for any overlap in the curves. Example: None The total length of all the curves. The ID of a selection set that contains the IDs of the curves to measure. Alternatively, if you specify a negative value, this is simply the ID of the single curve to measure.
feMeasureSurfaceArea
API-249
3.5.5.8 feMeasureSurfaceArea
feMeasureSurfaceArea
( surfaceSET, totalArea ) Description: This function measures the area of one or more surfaces. Input: INT4 surfaceSET Output: REAL8 totalArea Return Code: FE_NOT_EXIST FE_BAD_TYPE Remarks/Usage: This function only works for solid surfaces. Surfaces created with the standard geometry engine and boundary surfaces cannot be measured for area. Example: None One or more of the surfaces that you selected did not exist. totalArea is still the area of the existing surfaces. One or more of the surfaces that you selected was not a solid surface. The total area of the selected surfaces. The ID of a selection set that contains the IDs of the surfaces to measure. Alternatively, if you specify a negative value, this is simply the ID of the single surface to measure.
API-250
feMeasureSolidMassProp
3.5.5.9 feMeasureSolidMassProp
feMeasureSolidMassProp
( solidID, area, volume, cg, inertia ) Description: This function computes the mass properties of a solid. Input: INT4 solidID Output: REAL8 area REAL8 volume REAL8 cg[0..2] REAL8 inertia[0..9] Return Code: FE_NOT_EXIST Remarks/Usage: The cg and inertia terms are in global rectangular coordinates. Example: None The solid that you have selected does not exist. The total surface area of the solid. The volume of the solid (if closed). The location of the center of gravity of the solid. The 3x3 inertia matrix stored in row order [0][0], [0][1], [0][2], [1][0]...[2][2]. The ID of the solid to compute the mass properties.
feMeasureMeshMassProp
API-251
3.5.5.10 feMeasureMeshMassProp
feMeasureMeshMassProp
( elemSET, csysID, printResults, printDetails, len, area, volume, structMass, nonstructMass, totalMass, structCG, nonstructCG, totalCG, inertia, inertiaCG ) Description: This function computes the mass properties of a mesh. Input: INT4 elemSET INT4 csysID BOOL printResults BOOL printDetails Output: REAL8 len REAL8 area REAL8 volume REAL8 structMass REAL8 nonstructMass REAL8 totalMass REAL8 structCG[0..2] REAL8 nonstructCG[0..2] REAL8 totalCG[0..2] REAL8 inertia[0..5] REAL8 inertiaCG[0..5] Return Code: FE_NOT_EXIST FE_NEGATIVE_MASS_VOL UME The solid that you have selected does not exist. Some of the elements that you have selected have either negative mass or volume. Returned values may be less than the total absolute mass or volume. The total length of all selected line elements. The total area of all selected planar elements. The total volume of all selected elements. The structural mass of all selected elements. The nonstructural mass of all selected elements. The total (structural+nonstructural) mass of all selected elements. The center of gravity of the structural mass. The center of gravity of the nonstructural mass. The center of gravity of the total mass. The inertias of the selected elements ( 0=I11, 1=I21, 2=I22, 3=I31, 4=I32, 5=I33) about the origin of the selected coordinate system. The inertias of the selected elements ( 0=I11, 1=I21, 2=I22, 3=I31, 4=I32, 5=I33) about the center of gravity. The ID of a selection set that contains the IDs of the elements to measure. Alternatively, if you specify a negative value, this is simply the ID of the single element to measure. The coordinate system used to compute the mass properties. If True, the mass properties are also listed to the print destination. If True, and printResults=True, the detailed properties for each element are listed.
API-252
feMeasureMeshMassProp
feMeasureMeshMassProp
( elemSET, csysID, printResults, printDetails, len, area, volume, structMass, nonstructMass, totalMass, structCG, nonstructCG, totalCG, inertia, inertiaCG ) Remarks/Usage: Only total mass properties are returned. If you want to get individual properties, you must call this function and just select a single element. Example: None
feMeasureSurfSectionProp
API-253
3.5.5.11 feMeasureSurfSectionProp
feMeasureSurfSectionProp
( surfID, vecBase, vecDir, sectProp ) Description: This function computes the section properties for a planar surface. Input: INT4 surfID REAL8 vecBase[0..2] REAL8 vecDir[0..2] Output: The computed properties. 0= Area, 1= Y centroid, 2= Z centroid, 3= Y moment of inertia, 4= Z moment of inertia, 5= YZ product of inertia, 6= Angle to principal axes, 7= Y radius of gyration, 8= Z radius of gyration, 9= Polar moment of inertia, 10= Max Principal moment of inertia, 11= Min Principal moment of inertia, 12= Y Principal moment of inertia, 13= Z Principal moment of inertia, 14= YZ Principal moment of inertia, 15= Y Shear Center - from origin, 16= Z Shear Center - from origin, 17= Y Shear Center - from centroid, 18= Z Shear Center - from centroid, 19= Y Shear Area, 20= Z Shear Area, 21= YZ Shear Area, 22= Warping Constant, 23= Torsional Constant, 24= Not Used. The ID of the surface to compute the properties. The coordinates of the origin of the orientation vector. Section properties are reported about this point. A vector in the direction of the Y axis of the section. Section properties are reported about this axis.
REAL8 sectProp[0..24]
Return Code: FE_TOO_SMALL FE_NOT_AVAILABLE FE_INVALID FE_BAD_TYPE Remarks/Usage: None Example: None One of the arrays has dimensions which are too small to be used where you specified it. One of the arrays does not contain the required data. Data in the input arrays is outside the acceptable bounds. Data in the input arrays is not of the correct type (e.g. REAL8 or INT4).
API-254
feMeasureMeshSectionProp
3.5.5.12 feMeasureMeshSectionProp
feMeasureMeshSectionProp
( elemSET, vecBase, vecDir, sectProp ) Description: This function computes the section properties for a selected set of elements. Input: INT4 elemSET The ID of a selection set that contains the IDs of the elements to measure. Alternatively, if you specify a negative value, this is simply the ID of the single element to measure. The coordinates of the origin of the orientation vector. Section properties are reported about this point. A vector in the direction of the Y axis of the section. Section properties are reported about this axis.
REAL8 sectProp[0..24]
The computed properties: 0= Area, 1= Y centroid, 2= Z centroid, 3= Y moment of inertia, 4= Z moment of inertia, 5= YZ product of inertia, 6= Angle to principal axes, 7= Y radius of gyration, 8= Z radius of gyration, 9= Polar moment of inertia, 10= Max Principal moment of inertia, 11= Min Principal moment of inertia, 12= Y Principal moment of inertia, 13= Z Principal moment of inertia, 14= YZ Principal moment of inertia, 15= Y Shear Center - from origin, 16= Z Shear Center - from origin, 17= Y Shear Center - from centroid, 18= Z Shear Center - from centroid, 19= Y Shear Area, 20= Z Shear Area, 21= YZ Shear Area, 22= Warping Constant, 23= Torsional Constant, 24= Not Used.
Return Code: FE_TOO_SMALL FE_NOT_AVAILABLE FE_INVALID FE_BAD_TYPE Remarks/Usage: The elements that you select should all be planar elements. Example: None One of the arrays has dimensions which are too small to be used where you specified it. One of the arrays does not contain the required data. Data in the input arrays is outside the acceptable bounds. Data in the input arrays is not of the correct type (e.g. REAL8 or INT4).
feCheckCoincidentNode
API-255
3.5.6 Checks
3.5.6.1 feCheckCoincidentNode
feCheckCoincidentNode
( keepSET, mergeSET, tolerance, merge, messages, coinCount, coinNodes ) Description: This function checks, and optionally merges, coincident nodes. This method is obsolete and should be replaced by feCheckCoincidentNode2( ) Input: The ID of a selection set that contains the IDs of the nodes to check for coincidence. Alternatively, if you specify a negative value, this is simply the ID of the single node to check. The nodes in this set are retained if they are merged with a node in the mergeSET. The ID of a selection set that contains the IDs of the nodes to check for coincidence. Alternatively, if you specify a negative value, this is simply the ID of the single node to check. The nodes in this set are removed if they are merged with a node in the keepSET. You can specify the same value for both the keepSET and the mergeSET. The distance below which nodes will be considered to be coincident. If True, coincident nodes will be merged. If True, messages will be printed listing all coincident nodes that are found.
INT4 keepSET
INT4 mergeSET
The number of pairs of coincident nodes in coinNodes. The IDs of the nodes that are found to be coincident. The entries in this array come in pairs. That is, coinNodes[0] and coinNodes[1] are coincident with each other, as are coinNodes[2] and coinNodes[3]. The entries in coinNodes[0], coinNodes[2], coinNodes[4]... come from the keepSET, coinNodes[1], coinNodes[3]... come from the mergeSET. There are coinCount pairs.
INT4 coinNodes[0..N]
Return Code: FE_TOO_SMALL FE_NOT_AVAILABLE FE_INVALID FE_BAD_TYPE One of the arrays has dimensions which are too small to be used where you specified it. One of the arrays does not contain the required data. Data in the input arrays is outside the acceptable bounds. Data in the input arrays is not of the correct type (e.g. REAL8 or INT4).
API-256
feCheckCoincidentNode
feCheckCoincidentNode
( keepSET, mergeSET, tolerance, merge, messages, coinCount, coinNodes ) Remarks/Usage: None Example: None
feCheckCoincidentNode2
API-257
3.5.6.2 feCheckCoincidentNode
feCheckCoincidentNode2
( mergeSET, tolerance, merge, mergeMode, mergeLoc, bMergeAcrossConnections, nMessageMode, bSaveGroups ) Description: This function checks, and optionally merges, coincident nodes. Input: INT4 mergeSET REAL8 tolerance BOOL merge INT4 mergeMode INT4 mergeLoc BOOL bMergeAcrossConnections INT4 nMessageMode BOOL bSaveGroups Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to check for coincident nodes The ID of a selection set that contains the IDs of the nodes to check for coincidence. The distance below which nodes will be considered to be coincident. If True, coincident nodes will be merged, otherwise just checked for coincidence Select Nodes to Keep 0=Automatic, 1=LowerID, 2=HigherID Location of merged nodes 0=Original, 1=LowerID, 2=HigherID, 3=Middle If True, nodes can be merged even though they are on opposite sides of a connection. Otherwise they are not merged. Message Mode 0=Off, 1=On, 2=Detailed If True, groups are created of the nodes to be kept, and if merge=False of the nodes to be merged.
API-258
feCheckCoincidentPoint
3.5.6.3 feCheckCoincidentPoint
feCheckCoincidentPoint
( keepSET, mergeSET, tolerance, merge, messages, coinCount, coinPoints ) Description: This function checks, and optionally merges, coincident points. Input: The ID of a selection set that contains the IDs of the points to check for coincidence. Alternatively, if you specify a negative value, this is simply the ID of the single point to check. The points in this set are retained if they are merged with a point in the mergeSET. The ID of a selection set that contains the IDs of the points to check for coincidence. Alternatively, if you specify a negative value, this is simply the ID of the single point to check. The points in this set are removed if they are merged with a point in the keepSET. You can specify the same value for both the keepSET and the mergeSET. The distance below which points will be considered to be coincident. If True, coincident points will be merged. If True, messages will be printed listing all coincident points that are found.
INT4 keepSET
INT4 mergeSET
The number of pairs of coincident points in coinPoints. The IDs of the points that are found to be coincident. The entries in this array come in pairs. That is, coinPoints[0] and coinPoints[1] are coincident with each other, as are coinPoints[2] and coinPoints[3]. The entries in coinPoints[0], coinPoints[2], coinPoints[4]... come from the keepSET, coinPoints[1], coinPoints[3]... come from the mergeSET. There are coinCount pairs.
INT4 coinPoints[0..N]
Return Code: FE_TOO_SMALL FE_NOT_AVAILABLE FE_INVALID FE_BAD_TYPE Remarks/Usage: None One of the arrays has dimensions which are too small to be used where you specified it. One of the arrays does not contain the required data. Data in the input arrays is outside the acceptable bounds. Data in the input arrays is not of the correct type (e.g. REAL8 or INT4).
feCheckCoincidentPoint
API-259
feCheckCoincidentPoint
( keepSET, mergeSET, tolerance, merge, messages, coinCount, coinPoints ) Example: None
API-260
feCheckCoincidentCurve
3.5.6.4 feCheckCoincidentCurve
feCheckCoincidentCurve
( curveSET, tolerance ) Description: This function checks and merges coincident curves. Input: INT4 curveSET The ID of a selection set that contains the IDs of the curves to check for coincidence. Alternatively, if you specify a negative value, this is simply the ID of the single curve to check. The distance below which curves (and their endpoints) will be considered to be coincident.
REAL8 tolerance Output: None Return Code: None Remarks/Usage: None Example: None
feCheckPlanarNodes
API-261
3.5.6.5 feCheckPlanarNodes
feCheckPlanarNodes
( nodeSET, messages, project, tolerance, askPlane, planeBase, planeNormal ) Description: This function checks a set of nodes to see if they are planar. The nodes can also be projected onto the plane. Input: INT4 nodeSET The ID of a selection set that contains the IDs of the nodes to check. Alternatively, if you specify a negative value, this is simply the ID of the single node to check. If True, status messages are written showing the nodes that are not on the plane. If True, nodes that are not in the plane but are less than the tolerance distance out of the plane will be projected onto the plane. Nodes that are greater than the tolerance distance away from the plane will remain in their current location. The maximum distance from the plane for nodes to be moved onto the plane. Only used if project=True. If True, a dialog box will be displayed asking the user to pick a plane. If False, the planeBase and planeNormal will be used to specify the plane location. A location (in global rectangular coordinates) on the plane. A vector that is normal to the plane.
BOOL messages
BOOL project
REAL8 tolerance
BOOL askPlane REAL8 planeBase[0..2] REAL8 planeNormal[0..2] Output: None Return Code: None Remarks/Usage: None Example: None
API-262
feCheckCoincidentElem
3.5.6.6 feCheckCoincidentElem
feCheckCoincidentElem
( elemSET, chkTYPE, chkSHAPE, chkMASS, doLIST, makeGROUP1, makeGROUP2 ) Description: This function checks a set of elements to see if any of them are coincident (share the same nodes). Input: INT4 elemSET BOOL chkTYPE BOOL chkSHAPE BOOL chkMASS BOOL doLIST BOOL makeGROUP1 BOOL makeGROUP2 Output: None Return Code: None Remarks/Usage: This function only finds coincident elements that share the same nodes - not ones that may be coincident in physical location, but still have different nodes. Example: None The ID of a selection set that contains the IDs of the elements to check. Alternatively, if you specify a negative value, this is simply the ID of the single element to check. If True, elements of different type can still be considered coincident. If True, elements of different shape can be considered coincident if all of the nodes of one of the elements are on the other element. If True, mass elements are included in the check. If True, coincident elements are listed in the Messages and Lists window. If True, a group is made of the first element in the coincident pair. If True, a group is made of the second element in the coincident pair.
feCheckElemFixup
API-263
3.5.6.7 feCheckElemFixup
feCheckElemFixup
( elemSET ) Description: This function checks and attempts to fix a set of elements to see if any of them are invalid. Input: INT4 elemSET Output: None Return Code: None Remarks/Usage: This function is just like the fixup option in the Tools, Check, Distortion command. Checks include zero length, twisted faces, inverted solids, and element/property mismatch. Example: None The ID of a selection set that contains the IDs of the elements to check. Alternatively, if you specify a negative value, this is simply the ID of the single element to check.
API-264
feCheckElemDistortion
3.5.6.8 feCheckElemDistortion
feCheckElemDistortion
( elemSET, doLIST, makeGROUP, chkASPECT, chkTAPER, chkANGLE, chkWARP, chkALTTAPER, chkTET, chkJDet, chkComb, maxASPECT, maxTAPER, maxANGLE, maxWARP, maxALTTAPER, maxTET, maxJDet, maxComb ) Description: This function checks a set of elements to see if any of them are distorted. Input: INT4 elemSET The ID of a selection set that contains the IDs of the elements to check. Alternatively, if you specify a negative value, this is simply the ID of the single element to check. If True, distorted elements are listed in the Messages and Lists window. If True, a group is made of the distorted elements. If True, the aspect ratio check is performed. If True, element taper is checked. If True, the element internal angle check is performed. If True, the element warping check is performed. If True, the alternate element taper check is performed. If True, tetrahedral elements are checked for collapse. If True, checks element Jacobian If True, checks for combined element distortion factor Limit for aspect ratio check. Limit for taper check. Limit for internal angle check. Limit for warping check. Limit for alternate element taper check. Limit for tet collapse check. Limit for Jacobian check Limit for Combined Element Distortion check
BOOL doLIST BOOL makeGROUP BOOL chkASPECT BOOL chkTAPER BOOL chkANGLE BOOL chkWARP BOOL chkALTTAPER BOOL chkTET BOOL chkJDet BOOL chkComb REAL8 maxASPECT REAL8 maxTAPER REAL8 maxANGLE REAL8 maxWARP REAL8 maxALTTAPER REAL8 maxTET REAL8 maxJDet REAL8 maxComb Output: None
feCheckElemDistortion
API-265
feCheckElemDistortion
( elemSET, doLIST, makeGROUP, chkASPECT, chkTAPER, chkANGLE, chkWARP, chkALTTAPER, chkTET, chkJDet, chkComb, maxASPECT, maxTAPER, maxANGLE, maxWARP, maxALTTAPER, maxTET, maxJDet, maxComb ) Return Code: Data in the limit values is outside the acceptable bounds. FE_INVALID
Remarks/Usage: This function is just like the Tools, Check, Distortion command. The checks performed and the limit values are identical to that command. Example: None
API-266
feCheckElemDistortion2
3.5.6.9 feCheckElemDistortion2
feCheckElemDistortion2
( elemSET, doLIST, makeGROUP, chkASPECT, chkTAPER, chkANGLE, chkWARP, chkALTTAPER, chkTET, chkJDet, chkComb, chkExpTime, maxASPECT, maxTAPER, maxANGLE, maxWARP, maxALTTAPER, maxTET, maxJDet, maxComb, maxExpTime ) Description: This function checks a set of elements to see if any of them are distorted. Input: INT4 elemSET The ID of a selection set that contains the IDs of the elements to check. Alternatively, if you specify a negative value, this is simply the ID of the single element to check. If True, distorted elements are listed in the Messages and Lists window. If True, a group is made of the distorted elements. If True, the aspect ratio check is performed. If True, element taper is checked. If True, the element internal angle check is performed. If True, the element warping check is performed. If True, the alternate element taper check is performed. If True, tetrahedral elements are checked for collapse. If True, checks element Jacobian If True, checks for combined element distortion factor If True, checks for Explicit Time Step factors Limit for aspect ratio check. Limit for taper check. Limit for internal angle check. Limit for warping check. Limit for alternate element taper check. Limit for tet collapse check. Limit for Jacobian check Limit for Combined Element Distortion check Limit for Explicit Time Step check
BOOL doLIST BOOL makeGROUP BOOL chkASPECT BOOL chkTAPER BOOL chkANGLE BOOL chkWARP BOOL chkALTTAPER BOOL chkTET BOOL chkJDet BOOL chkComb BOOL chkExpTime REAL8 maxASPECT REAL8 maxTAPER REAL8 maxANGLE REAL8 maxWARP REAL8 maxALTTAPER REAL8 maxTET REAL8 maxJDet REAL8 maxComb REAL8 maxExpTime
feCheckElemDistortion2
API-267
feCheckElemDistortion2
( elemSET, doLIST, makeGROUP, chkASPECT, chkTAPER, chkANGLE, chkWARP, chkALTTAPER, chkTET, chkJDet, chkComb, chkExpTime, maxASPECT, maxTAPER, maxANGLE, maxWARP, maxALTTAPER, maxTET, maxJDet, maxComb, maxExpTime ) Output: None Return Code: Data in the limit values is outside the acceptable bounds. FE_INVALID
Remarks/Usage: This function is just like the Tools, Check, Distortion command. The checks performed and the limit values are identical to that command. Example: None
API-268
feGetElemDistortion
3.5.6.10 feGetElemDistortion
feGetElemDistortion
( elemID, valASPECT, valTAPER, valANGLE, valWARP, valNasWARP, valALTTAPER, valTET, valJDet, valComb ) Description: This function checks an element and returns the distortion values. Input: INT4 elemID Output: REAL8 valASPECT REAL8 valTAPER REAL8 valANGLE REAL8 valWARP REAL8 valNasWARP REAL8 valALTTAPER REAL8 valTET REAL8 valJDet REAL8 valComb Return Code: None Remarks/Usage: This function is just like the Tools, Check, Distortion command. The checks performed and the returned values are identical to that command. Example: None Result of aspect ratio check. Result of taper check. Result of internal angle check. Result of warping check. Result of Nastran warping check Result of alternate element taper check. Result of tet collapse check. Result of Jacobian check. Results of Combined Quality check The ID of the element to check for distortion.
feGetElemDistortion2
API-269
3.5.6.11 feGetElemDistortion2
feGetElemDistortion2
( elemID, valASPECT, valTAPER, valANGLE, valWARP, valNasWARP, valALTTAPER, valTET, valJDet, valComb, valExpTime ) Description: This function checks an element and returns the distortion values. Input: INT4 elemID Output: REAL8 valASPECT REAL8 valTAPER REAL8 valANGLE REAL8 valWARP REAL8 valNasWARP REAL8 valALTTAPER REAL8 valTET REAL8 valJDet REAL8 valComb REAL8 valExpTime Return Code: None Remarks/Usage: This function is just like the Tools, Check, Distortion command. The checks performed and the returned values are identical to that command. Example: None Result of aspect ratio check. Result of taper check. Result of internal angle check. Result of warping check. Result of Nastran warping check Result of alternate element taper check. Result of tet collapse check. Result of Jacobian check. Results of Combined Quality check Results of Explicit Time Step check The ID of the element to check for distortion.
API-270
feCheckElemNormal
3.5.6.12 feCheckElemNormal
feCheckElemNormal
( elemSET, csysID, doLIST, swapNORMAL, autoNORMAL, manNORMAL ) Description: This function checks and optionally reverses element normals. Input: INT4 elemSET The ID of a selection set that contains the IDs of the elements to check. Alternatively, if you specify a negative value, this is simply the ID of the single element to check. The coordinate system in which the check is done. If you are specifying manNORMAL, it must be in this coordinate system. If True, swapped elements are listed in the Messages and Lists window. If True, elements with normals that are opposite to the desired normal are reversed. If True, the desired normal direction is automatically determined from the first selected element. If False, the normal must be specified in manNORMAL. A unit vector, with coordinates in CSys csysID, in the direction of the desired normal. Only used if autoNORMAL=False.
BOOL autoNORMAL
REAL8 manNORMAL[0..2] Output: None Return Code: FE_TOO_SMALL FE_NOT_AVAILABLE FE_INVALID FE_BAD_TYPE Remarks/Usage: Only works with planar elements. Example: None
One of the arrays has dimensions which are too small to be used where you specified it. One of the arrays does not contain the required data. Data in the input arrays is outside the acceptable bounds. Data in the input arrays is not of the correct type (e.g. REAL8 or INT4)
feCheckConstraints
API-271
3.5.6.13 feCheckConstraints
feCheckConstraints
( doPERM, doLIST, bcSUM, bcSEP ) Description: This function checks constraints in the active constraint set. Input: BOOL doPERM BOOL doLIST Output: REAL8 bcSUM[0..5] The sum of the constraint values in each of the six degrees of freedom. The max separation of constraints. [0],[1],[2] are the max XYZ separation of the X constraints. [3],[4],[5] are the XYZ separation of the Y constraints, [6],[7],[8] are the XYZ separation of the Z constraints. If True, permanent nodal constraints are included in the check. If True, a summary report is listed.
One of the arrays has dimensions which are too small to be used where you specified it. One of the arrays does not contain the required data. Data in the input arrays is outside the acceptable bounds. Data in the input arrays is not of the correct type (e.g. REAL8 or INT4).
API-272
feCheckCoincidentLoads
3.5.6.14 feCheckCoincidentLoads
feCheckCoincidentLoads
( loadSET, mergeLOADS ) Description: This function checks loads from a group of load sets to see if similar loads are applied to the same geometry or mesh. Input: INT4 loadSET The ID of a selection set that contains the IDs of the load sets to check. Alternatively, if you specify a negative value, this is simply the ID of the single load set to check. If True and coincident loads are found, an attempt is made to merge/ combine them.
Unlike the Tools, Check, Coincident Loads command, this command does not give you the opportunity to selectively merge individual types of loads - either all types, or no types, are merged. Example: None
feCheckSumForces
API-273
3.5.6.15 feCheckSumForces
feCheckSumForces
( expandGEOM, doLIST, useSETS, nodeSET, elemSET, basePOINT, csysID, summedFORCES ) Description: This function checks loads from the active load set and sums the forces around a specific location. Input: BOOL expandGEOM BOOL doLIST BOOL useSETS If True, geometric loads are expanded before the check. If not, nonexpanded geometric loads will be ignored. If True, a summary report is written. If True, nodeSET and elemSET must specify the nodes and elements to consider in the summation. If False, the full model is used. The ID of a selection set that contains the IDs of the nodes to check. Alternatively, if you specify a negative value, this is simply the ID of the single node to check. Only used if useSETS=True. The ID of a selection set that contains the IDs of the elements to check. Alternatively, if you specify a negative value, this is simply the ID of the single element to check. Only used if useSETS=True. The coordinates of the location to sum about. Must be in global rectangular coordinates. The coordinate system used to report and returned the summed loads.
INT4 nodeSET
INT4 elemSET
REAL8 basePOINT[0..2] INT4 csysID Output: REAL8 summedFORCES[0..14] Return Code: None Remarks/Usage:
The results of the force summation. Entries [0..5] are the nodal force summations. [6..8] contain the elemental force summation. [9..14] contain the total summation.
API-274
3.6 Geometry Methods
Geometry Methods include:
Section 3.6.1, "Lines" Section 3.6.2, "Arcs" Section 3.6.3, "Circles" Section 3.6.4, "Splines" Section 3.6.5, "Curves from Surfaces Methods" Section 3.6.6, "Curve Modification Methods" Section 3.6.7, "Boundaries" Section 3.6.8, "Surfaces" Section 3.6.9, "Midsurfaces" Section 3.6.10, "Solids" Section 3.6.11, "Geometry and Mesh Generation Methods"
feLinePoints
API-275
3.6.1 Lines
3.6.1.1 feLinePoints
feLinePoints
( ontoWorkplane, p1, p2, messages ) Description: Creates a line between two coordinate locations. Input: BOOL ontoWorkplane REAL8 p1[0..2] REAL8 p2[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not create the line. If True, the coordinates specified are projected onto the workplane before the line is created. Coordinates at the first end of the line. Coordinates at the second end of the line. If True, messages are written to the Message and Lists window as the curve is created.
API-276
feLineHorzVert
3.6.1.2 feLineHorzVert
feLineHorzVert
( horizontal, p1, length, messages ) Description: Creates a horizontal or vertical line in the workplane. Input: BOOL horizontal REAL8 p1[0..2] REAL8 length BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not create the line. If True, the line will be horizontal (workplane X axis). If False, the line will be vertical (workplane Y axis). Coordinates that will be projected onto the workplane at the center of the line. The overall length of the line. If True, messages are written to the Messages and Lists window as the curve is created.
feLineAtAngle
API-277
3.6.1.3 feLineAtAngle
feLineAtAngle
( angle, curveID, origin, side, messages ) Description: Creates a line at an angle to the workplane, or another curve. Input: REAL8 angle INT4 curveID The angle from the workplane X axis, or the selected curve. The ID of the curve used to measure the angle. Set to 0 if you want to specify the angle from the workplane X axis (toward the Y axis). The coordinates at the start of the line. These are projected onto the curve to find location where the tangent vector is determined and at which the angle is measured. A location on the side of the curve where the line will be drawn toward. Not used if you are measuring from the workplane X axis. The line does not necessarily pass through this point; it is just used to determine which direction to go from the origin location. If True, messages are written to the Messages and Lists window as the curve is created.
REAL8 origin[0..2]
REAL8 side[0..2]
BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
Could not create the line - probably the curve does not exist.
API-278
feLineParallel
3.6.1.4 feLineParallel
feLineParallel
( offset, curveID, side, messages ) Description: Creates a line parallel to another in the workplane. Input: REAL8 offset INT4 curveID REAL8 side[0..2] The perpendicular distance from the selected curve used to locate the new curve. The ID of the reference curve. A location on the side of the curve where the line will be drawn. The line does not necessarily pass through this point; it is just used to determine which direction to go from the reference curve location. If True, messages are written to the Messages and Lists window as the curve is created.
BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
Could not create the line - either the curve does not exist or it is not of the correct type.
feLineMidline
API-279
3.6.1.5 feLineMidline
feLineMidline
( curve1, curve2, messages ) Description: Creates a line that is midway between two other lines. Input: INT4 curve1 INT4 curve2 BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not create the line - either one of the curves does not exist or is not of the correct type. The two reference curves used to determine the midline location. If True, messages are written to the Messages and Lists window as the curve is created.
API-280
feLinePointTangent
3.6.1.6 feLinePointTangent
feLinePointTangent
( curveID, origin, side, messages ) Description: Creates a line through an origin that is tangent to a selected curve. Input: INT4 curveID REAL8 origin[0..2] The ID of the curve that the line will be tangent to. The location at the start of the line. The line will pass through this location and be tangent to the curve. A location on the side of the curve where the line will be tangent. The line does not normally pass through this point; it is just used to determine which tangent to select. If True, messages are written to the Messages and Lists window as the curve is created.
REAL8 side[0..2]
BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
Could not create the line - either the curve does not exist or there is no tangent that could be computed.
feLine2Tangent
API-281
3.6.1.7 feLine2Tangent
feLine2Tangent
( curve1, curve2, side, messages ) Description: Creates a line that is tangent to two selected curves. Input: INT4 curve1 INT4 curve2 REAL8 side[0..2] The IDs of the curves that the line will be tangent to. A location on the side of the first curve where the line will be tangent. The line does not normally pass through this point; it is just used to determine which tangent to select. If True, messages are written to the Messages and Lists window as the curve is created.
BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
Could not create the line - either one of the curves does not exist or there is no tangent that could be computed.
API-282
feLineRectangle
3.6.1.8 feLineRectangle
feLineRectangle
( p1, p2, messages ) Description: Creates four lines that form a rectangle in the workplane between two diagonal locations. Input: REAL8 p1[0..2] REAL8 p2[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the curves. The diagonal locations that define the corners of the rectangle. These locations are projected onto the workplane. If True, messages are written to the Messages and Lists window as the curve is created.
feLinePointIDs
API-283
3.6.1.9 feLinePointIDs
feLinePointIDs
( p1, p2, messages ) Description: Creates a line that joins two points. Input: INT4 p1 INT4 p2 BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the line - probably one of the points does not exist. The ID of the point at the start of the line. The ID of the point at the end of the line. If True, messages are written to the Messages and Lists window as the curve is created.
API-284
3.6.2 Arcs
feArcCenterStartEnd
3.6.2.1 feArcCenterStartEnd
feArcCenterStartEnd
( center, start, end, messages ) Description: Creates an arc in the workplane by specifying the center of the arc, a starting location, and an ending location. Input: REAL8 center[0..2] REAL8 start[0..2] REAL8 end[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the arc. The locations used to define the arc. The center is at the center of the arc. start is a point on the perimeter at the beginning of the arc, and defines the radius. end is not necessarily on the arc, but specifies the ending location. If True, messages are written to the Messages and Lists window as the curve is created.
feArcRadiusStartEnd
API-285
3.6.2.2 feArcRadiusStartEnd
feArcRadiusStartEnd
( radius, start, end, messages ) Description: Creates an arc in the workplane by specifying the radius of the arc, a starting location and an ending location. Input: REAL8 radius REAL8 start[0..2] REAL8 end[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the arc - radius could be too small for locations specified. The radius of the arc. The locations used to define the arc. start is a point on the perimeter at the beginning of the arc, end is on the perimeter at the end of the arc. If True, messages are written to the Messages and Lists window as the curve is created.
API-286
feArcAngleStartEnd
3.6.2.3 feArcAngleStartEnd
feArcAngleStartEnd
( angle, start, end, messages ) Description: Creates an arc in the workplane by specifying the included angle of the arc, a starting location, and an ending location. Input: REAL8 angle REAL8 start[0..2] REAL8 end[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the arc - angle may not be valid. The included angle swept out by the arc. The locations used to define the arc. start is a point on the perimeter at the beginning of the arc, end is on the perimeter at the end of the arc. If True, messages are written to the Messages and Lists window as the curve is created.
feArcAngleCenterStart
API-287
3.6.2.4 feArcAngleCenterStart
feArcAngleCenterStart
( angle, center, start, messages ) Description: Creates an arc in the workplane by specifying the included angle of the arc, a location at the center, and a location on the perimeter. Input: REAL8 angle REAL8 center[0..2] REAL8 start[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the arc - angle may not be valid. The included angle swept out by the arc. The locations used to define the arc. center is at the center of the arc. start is a point on the perimeter and is used with center to determine the radius. If True, messages are written to the Messages and Lists window as the curve is created.
API-288
feArcChordCenterStart
3.6.2.5 feArcChordCenterStart
feArcChordCenterStart
( length, center, start, messages ) Description: Creates an arc in the workplane by specifying the chord length of the arc, a location at the center, and a location on the perimeter. Input: REAL8 length REAL8 center[0..2] REAL8 start[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the arc. The chord length of the arc, used to determine the included angle. The locations used to define the arc. center is at the center of the arc. start is a point on the perimeter and is used with center to determine the radius. If True, messages are written to the Messages and Lists window as the curve is created.
feArcPoints
API-289
3.6.2.6 feArcPoints
feArcPoints
( start, mid, end, messages ) Description: Creates a 3D arc in space, through the three points. Input: REAL8 start[0..2] REAL8 mid[0..2] REAL8 end[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the arc - points may be colinear. If True, messages are written to the Messages and Lists window as the curve is created. The three points on the arc. The arc goes from start, toward mid and stops at end.
API-290
feArcCenterPoints
3.6.2.7 feArcCenterPoints
feArcCenterPoints
( center, start, mid, end, messages ) Description: Creates a 3D arc in space, about a center and defined by three additional points. Input: REAL8 center[0..2] REAL8 start[0..2] REAL8 mid[0..2] REAL8 end[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the arc - points may be colinear or invalid. The location at the center of the arc. The location at the start of the arc. This, along with center, determine the radius of the arc. A location used to determine the direction of the arc from start - it does not necessarily lie on the arc. A location used to determine the ending angle of the arc - it does not necessarily lie on the arc. If True, messages are written to the Messages and Lists window as the curve is created.
feArcTangentStartEnd
API-291
3.6.2.8 feArcTangentStartEnd
feArcTangentStartEnd
( tangent, start, end, messages ) Description: Creates a 3D arc in space, from a point with a specified starting tangent. Input: REAL8 tangent[0..2] REAL8 start[0..2] REAL8 end[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the arc. A vector in the direction of the starting tangent of the arc. The location at the start of the arc. The location at the end of the arc. If True, messages are written to the Messages and Lists window as the curve is created.
API-292
3.6.3 Circles
feCircleRadius
3.6.3.1 feCircleRadius
feCircleRadius
( center, start, messages ) Description: Creates a circle in the workplane defined by a location at the center and one on the perimeter. Input: REAL8 center[0..2] REAL8 start[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the circle. The location at the center of the circle. A location on the perimeter of the circle. If True, messages are written to the Messages and Lists window as the curve is created.
feCircleDiameter
API-293
3.6.3.2 feCircleDiameter
feCircleDiameter
( dia1, dia2, messages ) Description: Creates a circle in the workplane defined by two locations at the opposite ends of a diameter. Input: REAL8 dia1[0..2] REAL8 dia2[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the circle. The locations at the opposite ends of the diameter of the circle. If True, messages are written to the Messages and Lists window as the curve is created.
API-294
feCircleCenter
3.6.3.3 feCircleCenter
feCircleCenter
( radius, center, messages ) Description: Creates a circle in the workplane defined a center location and the radius. Input: REAL8 radius REAL8 center[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the circle. The radius of the circle.s The location of the center of the circle. If True, messages are written to the Messages and Lists window as the curve is created.
feCircle2Point
API-295
3.6.3.4 feCircle2Point
feCircle2Point
( radius, pt1, pt2, messages ) Description: Creates a circle in the workplane defined by two points on the circle, and the radius. Input: The radius of the circle. Specify a positive number to go in a counterclockwise direction from pt1 to pt2. Specify a negative number to go in a clockwise direction. This is used to pick which of the two possible circles through the two points that you are trying to define. The locations on the circle. If True, messages are written to the Messages and Lists window as the curve is created.
REAL8 radius
REAL8 pt1[0..2] REAL8 pt2[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-296
feCircleConcentric
3.6.3.5 feCircleConcentric
feCircleConcentric
( radius, curveID, messages ) Description: Creates a circle in the workplane, with a specified radius, that is concentric with another arc or circle. Input: REAL8 radius INT4 curveID BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the circle. The radius of the circle. The ID of another arc or circle - used to define the center. If True, messages are written to the Messages and Lists window as the curve is created.
feCircle3Point
API-297
3.6.3.6 feCircle3Point
feCircle3Point
( pt1, pt2, pt3, messages ) Description: Creates a circle, in 3D space, through three points. Input: REAL8 pt1[0..2] REAL8 pt2[0..2] REAL8 pt3[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the circle. If True, messages are written to the Messages and Lists window as the curve is created. The locations on the circle.
API-298
feCircleCenterPoints
3.6.3.7 feCircleCenterPoints
feCircleCenterPoints
( center, pt1, pt2, messages ) Description: Creates a circle, in 3D space, using a center location, and specified by two other points. Input: REAL8 center[0..2] REAL8 pt1[0..2] REAL8 pt2[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the circle. The center of the circle. Two additional points on the circle. pt1 is used to define the radius of the circle. Both points (and the center) are used to define the plane of the circle. If True, messages are written to the Messages and Lists window as the curve is created.
feCircleCenterTangent
API-299
3.6.3.8 feCircleCenterTangent
feCircleCenterTangent
( curveID, center, messages ) Description: Creates a circle in the workplane that is tangent to a selected curve and uses the specified center. Input: INT4 curveID REAL8 center[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the circle. ID of the curve that this circle will be tangent to. The center of the circle. If True, messages are written to the Messages and Lists window as the curve is created.
API-300
feCircleTangentTangent
3.6.3.9 feCircleTangentTangent
feCircleTangentTangent
( curve1, curve2, radius, nearloc, messages ) Description: Creates a circle in the workplane that is tangent to two other curves, with a specified radius. Input: INT4 curve1 INT4 curve2 REAL8 radius REAL8 nearloc[0..2] IDs of the curves that this circle will be tangent to. The radius of the circle being created. A location near the tangency. This is used to select which tangency to use when there are several possible circles that meet the tangency and radius criteria. If True, messages are written to the Messages and Lists window as the curve is created.
BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feSplinePoints
API-301
3.6.4 Splines
3.6.4.1 feSplinePoints
feSplinePoints
( project, controlpoints, count, xyz, messages ) Description: Creates a spline using the specified points. Input: BOOL project Set to True if you want to project the xyz coordinates onto the workplane before creating the spline. Set to True if xys contains coordinates of the spline control points. Set to False if it contains coordinates of points that actually lie on the spline. The number of coordinates specified in xyz. Count must be at least 4, and can be no larger than 109. The coordinates of the locations used to define the spline. This array contains 3 * count entries stored as: x1,y1,z1,x2,y2,z2...xN,yN,zN. If True, messages are written to the Messages and Lists window as the curve is created.
BOOL controlpoints
INT4 count REAL8 xyz[0..3*count-1] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example:
API-302
feSplinePoints
feSplinePoints
( project, controlpoints, count, xyz, messages ) This is a sample program to create a spline through 6 points. Sub Main Dim App As femap.model Set App = GetObject(, "femap.model") Dim x(18) As Double Dim v As Variant Dim rc As Integer x(0) = 0# x(1) = 0# x(2) = 0# x(3) = 1# x(4) = 0# x(5) = 0 x(6) = 1 x(7) = 1 x(8) = 0 x(9) = 2 x(10) = 1 x(11) = 0 x(12) = 2 x(13) = 0 x(14) = 0 x(15) = 2.5 x(16) = 1 x(17) = 1 v = x rc = App.feSplinePoints(False, False, 6, v, True) App.feViewRegenerate(0) End Sub
feSplineTangent
API-303
3.6.4.2 feSplineTangent
feSplineTangent
( x1, v1, x2, v2, messages ) Description: Creates a spline using the tangent vectors at each end. Input: REAL8 x1[0..2] REAL8 v1[0..2] REAL8 x2[0..2] REAL8 v2[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the spline. The coordinates of the start of the spline. The components of the starting tangent of the spline. The coordinates of the ending location of the spline. The components of the ending tangent of the spline. If True, messages are written to the Messages and Lists window as the curve is created.
API-304
feSplineEllipse
3.6.4.3 feSplineEllipse
feSplineEllipse
( center, vector, a, b, messages ) Description: Creates splines in the workplane that form an ellipse. Input: REAL8 center[0..2] REAL8 vector[0..2] REAL8 a REAL8 b BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the spline. The coordinates at the center of the ellipse. The components of the vector along one axis of the ellipse. The radius of the ellipse along the vector. The radius of the ellipse perpendicular to the vector. If True, messages are written to the Messages and Lists window as the curve is created.
feSplineParabola
API-305
3.6.4.4 feSplineParabola
feSplineParabola
( center, focus, trim, messages ) Description: Creates a spline in the workplane in the shape of a parabola. Input: REAL8 center[0..2] REAL8 focus[0..2] REAL8 trim[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the spline. The coordinates at the center of the parabola. The coordinates of the focus of the parabola. The coordinates used to trim the outer end of the parabola. If True, messages are written to the Messages and Lists window as the curve is created.
API-306
feSplineHyperbola
3.6.4.5 feSplineHyperbola
feSplineHyperbola
( center, towardfocus, angle, height, trim, messages ) Description: Creates a spline in the workplane in the shape of a hyperbola. Input: REAL8 center[0..2] REAL8 towardfocus[0..2] REAL8 angle REAL8 height REAL8 trim[0..2] BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the spline. The coordinates at the center of the hyperbola. The components of a vector in the direction pointing toward the focus from the center. The asymptote angle. The vertex height. The coordinates used to trim the outer end of the hyperbola. If True, messages are written to the Messages and Lists window as the curve is created.
feSplineBlend
API-307
3.6.4.6 feSplineBlend
feSplineBlend
( curve1, near1, curve2, near2, factor, messages ) Description: Creates a spline in that blends the ends of two curves. Input: INT4 curve1 REAL8 near1[0..2] INT4 curve2 REAL8 near2[0..2] REAL8 factor BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the spline. The ID of the first curve. Coordinates near the desired end of curve1. The ID of the second curve. Coordinates near the desired end of curve2. The blend factor - adjusts the curvature of the spline between the curves. If True, messages are written to the Messages and Lists window as the curve is created.
API-308
feCurveUpdateSurfaces
feCurveUpdateSurfaces
( update, messages ) Description: This method sets the flag that decides whether the Curves from Surfaces methods will update their underlying surface. Input: BOOL update Set to True to update/split the underlying surfaces as curves are projected or created on the surfaces. If False, then the curves will be created at the same locations, but the surfaces will remain unchanged. If True, messages are written to the Messages and Lists window as the curve is created.
BOOL messages Output: None Return Code: None Remarks/Usage: None Example: None
feCurveIntersectSolids
API-309
3.6.5.2 feCurveIntersectSolids
feCurveIntersectSolids
( solid1, solid2 ) Description: This method creates curves along the intersections of two solids. It can also be used to intersect two solid surfaces. Input: INT4 solid1 INT4 solid2 Output: None Return Code: FE_FAIL Remarks/Usage: If feCurveUpdateSurfaces is True, the surfaces of the solids will be split at the intersection curves. Example: None Unable to create the curves. The IDs of the two solids to intersect. These solids can be regular solids, or sheet solids (solids with one or more surfaces, but no enclosed volume).
API-310
feCurveProjectOntoSolid
3.6.5.3 feCurveProjectOntoSolid
feCurveProjectOntoSolid
( projectNormal, along, solidID, curveSET, messages ) Description: Creates curves by projecting one or more curves onto a solid. Input: BOOL projectNormal REAL8 along[0..2] INT4 solidID INT4 curveSET BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: If feCurveUpdateSurfaces is True, the surfaces of the solids will be split at the projected curves. Example: None Unable to create the curves. If True, the projection is done to the closest location on the solid. If False, the projection is along the along vector. The components of the vector to project along. Ignored unless projectNormal is False. The ID of the solid to project onto. The ID of the set of existing curves to project onto the solid. Specify as a negative value to project a single curve. If True, messages are written to the Messages and Lists window as the curve is created.
feCurveProjectOntoSurfaces
API-311
3.6.5.4 feCurveProjectOntoSurfaces
feCurveProjectOntoSurfaces
( projectNormal, along, surfSET, curveSET, messages ) Description: Creates curves by projecting one or more curves onto one or more surfaces. Input: BOOL projectNormal REAL8 along[0..2] INT4 surfSET INT4 curveSET BOOL messages Output: None Return Code: FE_FAIL Remarks/Usage: If feCurveUpdateSurfaces is True, the surfaces will be split at the projected curves. Example: None Unable to create the curves. If True, the projection is done to the closest location on the surface. If False, the projection is along the along vector. The components of the vector to project along. Ignored unless projectNormal is False. The ID of the set of existing surfaces to project onto. Specify as a negative value to project onto a single surface. The ID of the set of existing curves to project onto the surfaces. Specify as a negative value to project a single curve. If True, messages are written to the Messages and Lists window as the curve is created.
API-312
feCurveParametricOnSurface
3.6.5.5 feCurveParametricOnSurface
feCurveParametricOnSurface
( surfID, uDir, location, messages ) Description: Creates a curve on a surface along one of the parametric directions of the surface. Input: INT4 surfID BOOL uDir The ID of the surface used to define the curve. If True, the curve will be along the surface U parametric direction. If False, the V parametric direction will be used. A location that the curve will pass through. This location is projected onto the surface and used to find the parametric value used to define the curve. If True, messages are written to the Messages and Lists window as the curve is created.
REAL8 location[0..2]
If feCurveUpdateSurfaces is True, the surface will be split at the parametric curve. Example: None
feCurveSlice
API-313
3.6.5.6 feCurveSlice
feCurveSlice
( solidID, planeBASE, planeNORMAL, planeX ) Description: Creates curves by slicing a solid with a plane. Input: INT4 solidID REAL8 planeBASE[0..2] REAL8 planeNORMAL[0..2] REAL8 planeX[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: If feCurveUpdateSurfaces is True, the surfaces of the solid will be split at the slicing plane. This does not slice the solid into two solids. It simply splits the surfaces. Example: None Unable to create the curves. The ID of the solid being sliced. Any location that lies on the plane used to slice the solid. The components of a vector that is normal to the plane. The components of a reference vector that lies in the plane - must be perpendicular to planeNORMAL.
API-314
feCurveOffsetCurveWasher
3.6.5.7 feCurveOffsetCurveWasher
feCurveOffsetCurveWasher
( curveSET, faceID, nMode, bAutoSelect, bSaveSplit, bExtend, dOffset ) Description: Creates curves by offsetting selected curves on a surface Input: INT4 curveSET INT4 faceID INT4 nMode BOOL bAutoSelect BOOL bSaveSplit BOOL bExtend REAL8 dOffset Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create the curves. The ID of the set of existing curves to create a washer or offset curve. The ID of the surface to offset the curves on. Offset Type: 0 = Curve, 1 = Washer Offset Only: Flag to automatically offset the selected curves to all of the surfaces connected to those curves Flag to keep split lines used when creating washer or offset curves. Offset Only: Flag to extend offset curves to closest edge. Distance to offset curves.
feCurveSplitPointToPoint
API-315
3.6.5.8 feCurveSplitPointToPoint
feCurveSplitPointToPoint
( nPtA, nPtB ) Description: Splits a surface between two selected points Input: INT4 nPtA INT4 nPtB Output: None Return Code: FE_FAIL Remarks/Usage: Both points must be on the same surface. Example: None Unable to create the curves / split the surface. The two points to split the surface between
API-316
feCurveSplitPointToEdge
3.6.5.9 feCurveSplitPointToEdge
feCurveSplitPointToEdge
( nPtA, nCuID ) Description: Splits a surface between a point and an edge Input: INT4 nPtA INT4 nCuID Output: None Return Code: FE_FAIL Remarks/Usage: The surface is split from the point to the closest location on the curve. Both the point and the edge must lie on the same surface. Example: None Unable to create the curves / split the surface. The points to split the surface from The ID of the curve to split to
feCurveSplitEdgeToEdge
API-317
3.6.5.10 feCurveSplitEdgeToEdge
feCurveSplitEdgeToEdge
( nLongEdge, nShortEdgeSet ) Description: Splits a surface between a long edge and the endpoints of one or more selected other edges Input: INT4 nLongEdge The ID of the edge to be split The ID of a Set that contains the IDs of the edges whose endpoints will be used to split the long edge and associated surface. Alternatively, specify a negative value to choose the ID of a single short edge.
INT4 nShortEdgeSet
Output: None Return Code: FE_FAIL Remarks/Usage: The surface is split from the endpoints of the selected edges to point to the closest location on the long edge. All edges must lie on the same surface. Example: None Unable to create the curves / split the surface.
API-318
feCurveTrim
feCurveTrim
( curveID, trimID, nearLoc, extend ) Description: Trims a curve to its intersection with another curve. Input: INT4 curveID INT4 trimID The ID of the curve to be trimmed. The ID of the curve to use as the trimming boundary. The coordinates, in global rectangular, of the location near which the curve will be trimmed. This helps to resolve ambiguities of which end of the curve to trim, and to choose between multiple intersections of the curves. If True, the trim curve is considered infinite and intersections are found anywhere along its length. If False, intersections must be between the curve endpoints.
REAL8 nearLoc[0..2]
BOOL extend Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feCurveExtend
API-319
3.6.6.2 feCurveExtend
feCurveExtend
( curveID, nearLoc ) Description: Extends a curve to a specified location. Input: INT4 curveID REAL8 nearLoc[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Did not extend the curve. The ID of the curve to be extended. The coordinates, in global rectangular, of the location to which the curve will be extended. The location does not have to lie on the extended curve; it is automatically projected as the curve is extended.
API-320
feCurveBreak
3.6.6.3 feCurveBreak
feCurveBreak
( curveID, nearLoc ) Description: Breaks a curve at a specified location. Input: INT4 curveID REAL8 nearLoc[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Did not break the curve. The ID of the curve to be broken. The coordinates, in global rectangular, of the location at which the curve will be broken. The location does not have to lie on the curve; it is automatically projected to the break location.
feCurveJoin
API-321
3.6.6.4 feCurveJoin
feCurveJoin
( curve1, curve2, nearLoc, update1, update2 ) Description: Extends or trims two curves to their intersection location. Input: INT4 curve1 INT4 curve2 The ID of the first curve to be joined. The ID of the second curve to be joined. The coordinates, in global rectangular, of the location near which the curves will be joined. This helps to resolve ambiguities of which end of the curves to trim/extend, and to choose between multiple intersections of the curves. If True, curve1 is extended or trimmed to the join location. If False, curve1 is left unchanged. If True, curve2 is extended or trimmed to the join location. If False, curve2 is left unchanged.
REAL8 nearLoc[0..2]
BOOL update1 BOOL update2 Output: None Return Code: FE_FAIL Remarks/Usage:
Do not set update1=update2=False. In this case, nothing will be changed. Example: None
API-322
feCurveFillet
3.6.6.5 feCurveFillet
feCurveFillet
( radius, curve1, curve2, nearLoc, update1, update2 ) Description: Fillets the intersection of two curves. Input: REAL8 radius INT4 curve1 INT4 curve2 The fillet radius. The ID of the first curve to be filleted. The ID of the second curve to be filleted. The coordinates, in global rectangular, of the location near which the curves will be filleted. Specification of this location is very important. It chooses the quadrant of the intersection that is going to be filleted. If True, curve1 is extended or trimmed to the fillet location. If False, curve1 is left unchanged. If True, curve2 is extended or trimmed to the fillet location. If False, curve2 is left unchanged.
REAL8 nearLoc[0..2]
BOOL update1 BOOL update2 Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feCurveChamfer
API-323
3.6.6.6 feCurveChamfer
feCurveChamfer
( len1, len2, curve1, curve2, nearLoc, update1, update2 ) Description: Chamfers the intersection of two curves. Input: REAL8 len1 REAL8 len2 INT4 curve1 INT4 curve2 The chamfer length along curve1. The chamfer length along curve2. The ID of the first curve to be chamfered. The ID of the second curve to be chamfered. The coordinates, in global rectangular, of the location near which the curves will be chamfered. Specification of this location is very important. It chooses the quadrant of the intersection that is going to be chamfered. If True, curve1 is extended or trimmed to the fillet location. If False, curve1 is left unchanged. If True, curve2 is extended or trimmed to the fillet location. If False, curve2 is left unchanged.
REAL8 nearLoc[0..2]
BOOL update1 BOOL update2 Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-324
feBoundaryFromPoints
3.6.7 Boundaries
3.6.7.1 feBoundaryFromPoints
feBoundaryFromPoints
( nCSys, nPoints, pXYZ, nBoundaryID ) Description: Creates a boundary surface from a group of locations specified in order around the surface Input: INT4 nCSys INT4 nPoints REAL8 pXYZ[0..3*nPoints-1] Output: INT4 nBoundaryID Return Code: FE_FAIL Remarks/Usage: This method creates points at the locations specified, and lines between them to form a loop. The points must define a single loop. If you need to create a boundary with multiple loops (holes), then you must use feBoundaryFromCurves. The ID of the boundary created will use the next available surface ID. Example: None Unable to create the boundary - either points and curves failed to be created or the loop is not connected. The ID of the boundary that is created. The ID of a Coordinate System that the pXYZ coordinates are defined in. 0=Global Rectangular The number of locations specified in the pXYZ array The coordinates of the points used to define the boundary, specified in the selected Coordinate System. The array must be stored as [x0,y0,z0,x1,y1,z1,...xN,yN,zN]
feBoundaryFromCurves
API-325
3.6.7.2 feBoundaryFromCurves
feBoundaryFromCurves
( setID ) Description: Creates a boundary surface from a group of connected curves. Input: INT4 setID Output: None Return Code: FE_FAIL Remarks/Usage: The ID of the boundary created will use the next available surface ID. The curves selected must form one or more closed loops. If there are multiple loops, there must be one outer loop, and one or more internal loops which are used as holes. Loops may not be nested inside holes. Example: This function creates a boundary from four curves. Sub Main Dim App As femap.model Set App = GetObject(, "femap.model") Dim s As Object Set s = femap.feSet() Dim rc As Integer startID = 1 stopID = 4 IDincrement = 1 rc = s.AddRange(startID, stopID, IDincrement) rc = femap.feBoundaryFromCurves(s.Id) App.feViewRegenerate(0) End Sub Unable to create the boundary - either curves do not exist, or are not connected. The ID of a set that contains a list of Curve IDs used to define the boundary. Alternatively, if you specify a negative value, this is simply the ID of the single curve to write (which must be closed).
API-326
feBoundaryFromSurfaces
3.6.7.3 feBoundaryFromSurfaces
feBoundaryFromSurfaces
( surfaceSET ) Description: Creates a boundary surface from a group of adjacent surfaces on a solid. Input: INT4 surfaceSET Output: None Return Code: FE_FAIL Remarks/Usage: The ID of the boundary created will use the next available surface ID. Example: This function creates a boundary from two surfaces. Sub Main Dim femap As femap.model Set femap = GetObject(, "femap.model") Dim s As Object Set s = femap.feSet() Dim rc As Integer surf1 = 14 surf2 = 17 rc = s.Add(surf1) rc = s.Add(surf2) rc = femap.feBoundaryFromSurfaces(s.ID) App.feViewRegenerate(0) End Sub Unable to create the boundary - either surfaces do not exist, or are not adjacent. The ID of a set that contains a list of Surface IDs used to define the boundary. Alternatively, if you specify a negative value, this is simply the ID of the single surface to use.
feBoundaryAddSurfaces
API-327
3.6.7.4 feBoundaryAddSurfaces
feBoundaryAddSurfaces
( nBoundaryID, surfaceSET, bAddToExisting ) Description: Adds surfaces to an already defined multi-surface boundary Input: INT4 nBoundaryID INT4 surfaceSET BOOL bAddToExisting Output: None Return Code: FE_FAIL Remarks/Usage: The ID of the boundary created will use the next available surface ID. Example: This function creates a boundary from two surfaces. Sub Main Dim femap As femap.model Set femap = GetObject(, "femap.model") Dim s As Object Set s = femap.feSet() Dim rc As Integer surf1 = 14 surf2 = 17 rc = s.Add(surf1) rc = s.Add(surf2) rc = femap.feBoundaryFromSurfaces(s.ID) App.feViewRegenerate(0) End Sub Unable to create the boundary - either surfaces do not exist, or are not adjacent. The ID of the boundary to update The ID of a set that contains a list of Surface IDs used to define the boundary. Alternatively, if you specify a negative value, this is simply the ID of the single surface to use. Set to True, to add the new surfaces into the existing boundary.
API-328
feBoundaryUpdateSurfaces
3.6.7.5 feBoundaryUpdateSurfaces
feBoundaryUpdateSurfaces
( boundaryID ) Description: Updates a boundary that was defined from surfaces, when the underlying surfaces have changed. Input: INT4 boundaryID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to update the boundary - possibly the original definition is no longer valid. The ID of the boundary surface to update.
feSurfaceCorners
API-329
3.6.8 Surfaces
3.6.8.1 feSurfaceCorners
feSurfaceCorners
( fourCorners, c1, c2, c3, c4 ) Description: Creates a surface defined by three or four corner locations. Input: BOOL fourCorners REAL8 c1[0..2] REAL8 c2[0..2] REAL8 c3[0..2] REAL8 c4[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create surface. Points may be colinear. The corner locations. These locations should be specified in global coordinates, and must be specified in a continuous loop around the surface. Set to True to define a surface from four corners, or False to define a three-corner surface.
API-330
feSurfaceEdgeCurves
3.6.8.2 feSurfaceEdgeCurves
feSurfaceEdgeCurves
( curve1, curve2, curve3, curve4 ) Description: Creates a surface defined by three or four edge curves. Input: INT4 curve1 INT4 curve2 INT4 curve3 INT4 curve4 Output: None Return Code: FE_FAIL Remarks/Usage: The curve IDs must be specified in order, forming a closed loop around the surface. Example: None Unable to create surface. Curves may not be connected, or may not form a closed loop to define the surface. ID of the first curve to select as a surface edge ID of the second curve ID of the third curve ID of the fourth curve (If curve4=0, create a 3 sided surface)
feSurfaceAlignedCurves
API-331
3.6.8.3 feSurfaceAlignedCurves
feSurfaceAlignedCurves
( curveCOUNT, curveID ) Description: Creates a surface defined by multiple aligned curves. Input: INT4 curveCOUNT INT4 curveID[0..curveCOUNT] Output: None Return Code: FE_FAIL Remarks/Usage: None Example: Unable to create surface. Curves may not be defined properly to create aligned surface. The number of curve IDs that are specified in curveID. The IDs of the curves that will be used to create the surface. This array must contain as many curveIDs as are specified by curveCOUNT. Furthermore, the curves must be specified in the order that they will be used to create the lofted surface.
API-332
feSurfaceAlignedCurves
feSurfaceAlignedCurves
( curveCOUNT, curveID ) The following shows an example of connecting to a model and creating a surface through six curves. This assumes that the curves already existed. Sub Main Dim App As femap.model Set App = GetObject(, "femap.model") Dim curveID(10) As Long Dim vcurveID As Variant Dim curveCOUNT As Long Dim rc As Long curveCOUNT curveID(0) curveID(1) curveID(2) curveID(3) curveID(4) curveID(5) vcurveID = = 6 = 5 = 4 = 3 = 2 = 6 = 1 curveID
feSurfaceRuled
API-333
3.6.8.4 feSurfaceRuled
feSurfaceRuled
( c1, c2 ) Description: Creates a ruled surface between two curves. Input: INT4 c1 INT4 c2 Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create surface. Curves may not exist. The ID of the first curve used to define the surface. The ID of the second curve used to define the surface.
API-334
feSurfaceExtrude
3.6.8.5 feSurfaceExtrude
feSurfaceExtrude
( curveSET, axisLEN, axisVEC ) Description: Creates one or more surfaces by extruding a set of curves. Input: INT4 curveSET REAL8 axisLEN REAL8 axisVEC[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: Curves are extruded from their current location along the specified vector. Example: None Unable to create surface. Curves may not exist. ID of set containing the IDs of the curves to be extruded. Alternatively, if you specify a negative value, this is simply the ID of the single curve to extrude. The length of the extrusion. The components of the extrusion vector. This vector is normalized and multiplied by axisLEN to find the total extrusion vector.
feSurfaceRevolve
API-335
3.6.8.6 feSurfaceRevolve
feSurfaceRevolve
( curveSET, axisANGLE, axisBASE, axisVEC ) Description: Creates one or more surfaces by revolving a set of curves. Input: INT4 curveSET REAL8 axisANGLE REAL8 axisBASE[0..2] REAL8 axisVEC[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: Curves are revolved from their current location around the specified vector. Example: None Unable to create surface. Curves may not exist. ID of set containing the IDs of the curves to be revolved. Alternatively, if you specify a negative value, this is simply the ID of the single curve to revolve. The angle of revolution, in degrees. A location, specified in global coordinates, that defines the base of the axis of revolution. The components of the axis of revolution. This vector will be located at the axisBASE location, and the curves will be revolved around it.
API-336
feSurfaceSweep
3.6.8.7 feSurfaceSweep
feSurfaceSweep
( curveSET, pathSET ) Description: Creates one or more surfaces by sweeping a set of curves along a path. Input: INT4 curveSET ID of set containing the IDs of the curves to be swept. Alternatively, if you specify a negative value, this is simply the ID of the single curve to sweep. ID of a set containing the IDs of the curves to be used as a path. Alternatively, if you specify a negative value, this is simply the ID of the single curve to use as the path. If you specify a set, the curves must form a single connected path. If you are not using the standard FEMAP geometry engine, then this set must contain a single curve. Only the standard engine can sweep along a multicurve path.
INT4 pathSET
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to create surface. Curves may not exist, or path may not be connected.
feSurfaceNormalDeviation
API-337
3.6.8.8 feSurfaceNormalDeviation
feSurfaceNormalDeviation
( surfaceSetID, dAvgNormal, dMaxAngle ) Description: Finds the average normal of a set of surfaces and the maximum deviation of the normal from that average Input: INT4 surfaceSetID Output: REAL8 dAvgNormal[0..2] REAL8 dMaxAngle Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to determine average normal and deviation. The vector components of the average normal to the entire set of selected surfaces The maximum angle, in degrees, that any surface normal deviates from the vector returned in dAvgNormal. The ID of a Set containing the IDs of one or more Surfaces. If you want to test just one surface, simply specify surfaceSetID equal to the negative of the Surface ID.
API-338
feSurfaceConvert
3.6.8.9 feSurfaceConvert
feSurfaceConvert
( surfaceSET, bDelete ) Description: Converts surfaces into Solid (Parasolid) surfaces. Input: INT4 surfaceSetID BOOL bDelete Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to convert one or more surfaces The ID of a Set containing the IDs of one or more Surfaces to convert. If you want to convert just one surface, simply specify surfaceSET equal to the negative of the Surface ID. If True, the original Surfaces are deleted after being converted.
feSurfaceNonManifoldAdd
API-339
3.6.8.10 feSurfaceNonManifoldAdd
feSurfaceNonManifoldAdd
( solidSET ) Description: Adds solids and sheet solids (surfaces) together to create a general body in parasolid. Input: INT4 solidSET Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not add selected solids and sheet solids into a general body The ID of a set that contains a list of Solid IDs that will be added to create a general body.
API-340
feSurfaceRecoverManifold
3.6.8.11 feSurfaceRecoverManifold
feSurfaceRecoverManifold
( solidSET ) Description: Recovers manifold solids and sheet solids from General Bodies created using NonManifold Add command. Input: INT4 solidSET Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not recover manifold geometry from General Body The ID of a set that contains a list of Solid IDs (General Body IDs) to recover manifold geometry from. Alternatively, if you specify a negative value, this is simply the ID of the single General Body.
feSurfaceRemoveHole
API-341
3.6.8.12 feSurfaceRemoveHole
feSurfaceRemoveHole
( curveSET ) Description: Removes holes from a surface by curve. Input: INT4 curveSET Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not remove hole from body. The ID of a set that contains a list of Curve IDs that are part of a one or more holes to remove from a surface. Alternatively, if you specify a negative value, this is simply the ID of the single curve.
API-342
feSurfaceMidSingle
3.6.9 Midsurfaces
3.6.9.1 feSurfaceMidSingle
feSurfaceMidSingle
( trim, surfID1, surfID2 ) Description: Creates a midsurface between two existing surfaces. Input: BOOL trim INT4 surfID1 INT4 surfID2 Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not create the midsurface. If True, the new surface is trimmed to lie within the bounds of the solid containing the original surfaces. The first surface to use to generate the midsurface. The other surface used to generate the midsurface.
feSurfaceMidAuto
API-343
3.6.9.2 feSurfaceMidAuto
feSurfaceMidAuto
( surfSET, thick ) Description: Creates midsurfaces between a set of selected surfaces Input: INT4 surfSET REAL8 thick Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not create the midsurfaces. ID of set containing the IDs of the surfaces to be used to generate midsurfaces. The target thickness to be used to find midsurfaces.
API-344
feSurfaceMidAttrib
3.6.9.3 feSurfaceMidAttrib
feSurfaceMidAttrib
( surfSET, matlID ) Description: Assigns meshing attributes, including thicknesses, to surfaces that were created as midsurfaces. Input: INT4 surfSET INT4 matlID Output: None Return Code: FE_FAIL Remarks/Usage: The surface set that you specify can include surfaces that were not generated as midsurfaces, but only those surfaces that were midsurfaces will have meshing attributes assigned. This means that you can simply include all surfaces in the model and it will automatically find all the midsurfaces and assign attributes. Example: None Could not assign attributes. ID of set containing the IDs of the surfaces to have attributes assigned. Alternatively, if you specify a negative value, this is simply the ID of the single surface to use. The ID of the material to assign as a meshing attribute.
feSurfaceTrimToSolid
API-345
3.6.9.4 feSurfaceTrimToSolid
feSurfaceTrimToSolid
( sheetID, solidID ) Description: Trims an open, sheet solid to the boundaries of a solid that contains it. Input: INT4 sheetID INT4 solidID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not trim to the selected surface. The ID of the solid that is defined by the surfaces that are to be trimmed. The ID of the bounding solid used to trim the sheet.
API-346
feSurfaceTrimWithCurves
3.6.9.5 feSurfaceTrimWithCurves
feSurfaceTrimWithCurves
( surfID, curveSET ) Description: Trims a surface with one or more curves. Input: INT4 surfID INT4 curveSET Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not trim the selected surface. The ID of the surface to be trimmed. ID of set containing the IDs of the curves to be used for trimming. Alternatively, if you specify a negative value, this is simply the ID of the single curve to use.
feSolidPrimitive
API-347
3.6.10 Solids
3.6.10.1 feSolidPrimitive
feSolidPrimitive
( operation, shape, positive, origin, size, title ) Description: Creates a solid primitive. Input: INT4 operation The type of operation to perform when creating the solid: 0=Create New Solid, 1=Add to Active Solid, 2=Remove from Active Solid, 3=Common with Active Solid. The type of primitive to create: 0=Block (Center), 1=Block (Corner), 2=Cylinder, 3=Cone, 4=Sphere, 5=Sphere (Alt) Set to True if the Z direction should be in the positive workplane Z direction, or False to go in the negative workplane Z direction. Dimensions should all be positive. The location, in the workplane, of the origin of the solid. The size of the primitive to create. The exact meaning of these dimensions varies depending on the value of shape. Refer to the table at the end of this command for details. The title to assign to the solid - only used if creating a new solid.
INT4 shape
BOOL positive REAL8 origin[0..1] REAL8 size[0..2] STRING title Output: None Return Code: FE_FAIL Remarks/Usage:
The Add, Remove and Common operations manipulate the active solid. You can select the active solid by setting femap.Info_ActiveID(39) to the ID of the solid that you want to use. Example:
Primitive/Shape
API-348
feSolidPrimitive
Size
size(0) = Bottom Radius Cone size(1) = Top Radius size(2) = Height size(0) = Radius Sphere size(1) = not used size(2) = not used
feSolidExtrude
API-349
3.6.10.2 feSolidExtrude
feSolidExtrude
( operation, surfID, dirMode, depthMode, dirVec, depthVec ) Description: Extrudes a surface into a solid, or modifies an existing solid by extruding. Input: INT4 operation INT4 surfID The type of operation to perform when creating the solid: 0=Create New Solid, 1=Add to Active Solid, 2=Remove from Active Solid. The surface to extrude. This surface can either be an existing solid surface, or a planar boundary. Specifies the approach you will use to specify the extrusion direction: 0=Positive Surface Normal, 1=Negative Surface Normal, 2=Surface Normal, Both Positive and Negative, 3=Along the Vector specified in dirVec, 4=Opposite the Vector specified in dirVec, 5=Along and Opposite the Vector specified in dirVec. Specifies the approach you will use to specify the extrusion length/ depth: 0=Specified Depth - the depth is defined in depthVec[0], 1=To Location - the location to extrude to is specified in depthVec[0..2], in global coordinates, 2=Thru All - Only used for the Remove operation to cut completely through the active solid. The components, in global rectangular coordinates, of the extrusion vector. Only used if dirMode = 3, 4 or 5. The extrusion length (depthMode=0) or the location to extrude to, in global rectangular coordinates (depthMode=1). Not used for Thru All extrusions.
INT4 dirMode
INT4 depthMode
REAL8 dirVec[0..2]
The Add and Remove operations manipulate the active solid. You can select the active solid by setting femap.Info_ActiveID(39) to the ID of the solid that you want to use. Example: None
API-350
feSolidRevolve
3.6.10.3 feSolidRevolve
feSolidRevolve
( operation, surfID, dirMode, angleMode, axisBase, axisVec, angleVec ) Description: Revolves a surface into a solid, or modifies an existing solid by revolving. Input: INT4 operation INT4 surfID The type of operation to perform when creating the solid: 0=Create New Solid, 1=Add to Active Solid, 2=Remove from Active Solid. The surface to revolve. This surface can either be an existing solid surface, or a planar boundary. Specifies the approach you will use to specify the extrusion direction: 0=Positive Around Axis, 1=Negative Around Axis, 2=Both Positive and Negative Around Axis. Specifies the approach you will use to specify the angle of revolution: 0=Specified Angle - the angle is defined in angleVec[0], 1=To Location - the location to revolve to is specified in angleVec[0..2], 2=Full 360 degree revolution. All angles are specified in degrees. The location of the base of the axis of revolution, specified in global rectangular coordinates. The components of the axis of revolution, specified in global rectangular coordinates. The angle of revolution (angleMode=0) or the location to revolve to, in global rectangular coordinates (angleMode=1). Not used for Full 360 revolutions.
INT4 dirMode
INT4 angleMode
The Add and Remove operations manipulate the active solid. You can select the active solid by setting femap.Info_ActiveID(39) to the ID of the solid that you want to use. Example: None
feSolidExplode
API-351
3.6.10.4 feSolidExplode
feSolidExplode
( solidSET ) Description: Explodes selected solids into individual surfaces. Input: INT4 solidSET Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not explode selected solids. The ID of a set that contains a list of Solid IDs that will be exploded. Alternatively, if you specify a negative value, this is simply the ID of the single solid to explode.
API-352
feSolidStitch
3.6.10.5 feSolidStitch
feSolidStitch
( surfaceSET, tolerance ) Description: Stitches selected surfaces into solids. A solid cleanup routine is run at the end of the command to remove any redundant geometry and simplify the geometry. Input: INT4 surfaceSET The ID of a set that contains a list of Surface IDs that will be stitched. Alternatively, if you specify a negative value, this is simply the ID of the single surface to stitch. The tolerance to use when stitching the surfaces (Parasolid only). Specify 0.0 to use the default stitching tolerance.
REAL8 tolerance Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feSolidStitchNoCleanup
API-353
3.6.10.6 feSolidStitchNoCleanup
feSolidStitchNoCleanup
( surfaceSET, tolerance ) Description: Stitches selected surfaces into solids. A solid cleanup routine is NOT run at the end of the command to remove any redundant geometry, therefore all internal curves and individual surfaces remain intact. Input: INT4 surfaceSET The ID of a set that contains a list of Surface IDs that will be stitched. Alternatively, if you specify a negative value, this is simply the ID of the single surface to stitch. The tolerance to use when stitching the surfaces (Parasolid only). Specify 0.0 to use the default stitching tolerance.
REAL8 tolerance Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-354
feSolidFillet
3.6.10.7 feSolidFillet
feSolidFillet
( curveSET, radius ) Description: Fillets one or more edges of a solid. Input: INT4 curveSET REAL8 radius Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not fillet selected curves. The ID of a set that contains a list of Curve IDs that will be filleted. Alternatively, if you specify a negative value, this is simply the ID of the single curve to fillet. The fillet radius.
feSolidChamfer
API-355
3.6.10.8 feSolidChamfer
feSolidChamfer
( curveSET, length ) Description: Chamfers one or more edges of a solid. Input: INT4 curveSET REAL8 chamfer Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not chamfer selected curves. The ID of a set that contains a list of Curve IDs that will be chamfered. Alternatively, if you specify a negative value, this is simply the ID of the single curve to chamfer. The chamfer length.
API-356
feSolidAdd
3.6.10.9 feSolidAdd
feSolidAdd
( solidSET, redraw ) Description: Adds two or more solids to form a new solid. Input: INT4 solidSET BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not add the selected solids. The ID of a set that contains a list of Solid IDs that will be added. This list must contain at least two solids to be added. If True, the graphics will be redrawn to reflect the updated solids following this operation.
feSolidRemove
API-357
3.6.10.10 feSolidRemove
feSolidRemove
( baseID, solidSET, redraw ) Description: Removes (subtracts) one or more solids from a base solid. Input: INT4 baseID The ID of the base solid, from which the solids in solidSET will be removed. The ID of a set that contains a list of Solid IDs that will be removed. Alternatively, if you specify a negative value, this is simply the ID of the single solid to remove. If True, the graphics will be redrawn to reflect the updated solids following this operation.
INT4 solidSET
BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-358
feSolidCommon
3.6.10.11 feSolidCommon
feSolidCommon
( baseID, toolID, redraw ) Description: Creates a new solid that represents the common volume between two original solids. Input: INT4 baseID INT4 toolID BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not find the common volume between the selected solids. The ID of the base solid. The ID of the tool solid. If True, the graphics will be redrawn to reflect the updated solids following this operation.
feSolidEmbed
API-359
3.6.10.12 feSolidEmbed
feSolidEmbed
( baseID, toolID, redraw ) Description: Embeds one solid (the tool) inside another (the base). Input: INT4 baseID INT4 toolID BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not embed the selected solid. The ID of the base solid. The ID of the tool solid. If True, the graphics will be redrawn to reflect the updated solids following this operation.
API-360
feSolidIntersect
3.6.10.13 feSolidIntersect
feSolidIntersect
( solidSET, redraw ) Description: Breaks all of the surfaces of the selected solids at their intersections with other surfaces. Input: INT4 solidSET BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not intersect the selected solids. The ID of a set that contains a list of solid IDs that will be intersected. This list must contain at least two solids. If True, the graphics will be redrawn to reflect the updated solids following this operation.
feSolidShell
API-361
3.6.10.14 feSolidShell
feSolidShell
( baseID, surfaceSET, thickness, redraw ) Description: Converts a solid into a thin-walled solid by offsetting outer surfaces. Input: INT4 baseID The ID of the base solid to be modified. The ID of a set that contains a list of surface IDs that will be pierced by the shelling operation: that is, the list of surfaces that are really on the thru-the-thickness edges of the shelled solid. Alternatively, if you specify a negative value, this is simply the ID of the single surface to pierce. The thickness of the resulting shelled solid. This is the distance that the outer surfaces are offset to form the inner surfaces. If True, the graphics will be redrawn to reflect the updated solids following this operation.
INT4 surfaceSET
REAL8 thickness BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-362
feSolidSlice
3.6.10.15 feSolidSlice
feSolidSlice
( solidSET, planeBASE, planeNORMAL, redraw ) Description: Slices one or more solids with a plane. Input: INT4 solidSET REAL8 planeBASE[0..2] REAL8 planeNORMAL[0..2] BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not slice the selected solids. The ID of a set that contains a list of solid IDs that will be sliced. Alternatively, if you specify a negative value, this is simply the ID of the single solid to slice. Any location that lies on the plane used to slice the solid. The components of a vector that is normal to the plane. If True, the graphics will be redrawn to reflect the updated solids following this operation.
feSolidSliceMatch
API-363
3.6.10.16 feSolidSliceMatch
feSolidSliceMatch
( solidSET, planeBASE, planeNORMAL, redraw ) Description: Slices one or more solids with a plane and leaves matching surfaces on both new solids. Input: INT4 solidSET REAL8 planeBASE[0..2] REAL8 planeNORMAL[0..2] BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not slice the selected solids. The ID of a set that contains a list of solid IDs that will be sliced. Alternatively, if you specify a negative value, this is simply the ID of the single solid to slice. Any location that lies on the plane used to slice the solid. The components of a vector that is normal to the plane. If True, the graphics will be redrawn to reflect the updated solids following this operation.
API-364
feSolidSliceAlongFace
3.6.10.17 feSolidSliceAlongFace
feSolidSliceAlongFace
( surfaceID ) Description: Separates a solid by slicing it with one of its surfaces. Input: INT4 surfaceID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not slice the solid with the selected surface. The ID of the surface used to slice the solid. This surface is also used to determine the solid to slice, since only the solid that contains the surface can be sliced.
feSolidEmbedFace
API-365
3.6.10.18 feSolidEmbedFace
feSolidEmbedFace
( surfaceID, dirMode, curveOpt, direction, offset, redraw ) Description: Uses a surface of a solid to divide it. Input: INT4 surfaceID The ID of the surface used to slice the solid. This surface is also used to determine the solid to slice, since only the solid that contains the surface can be sliced. The option used to determine which direction the surface will be projected as it is embedded into the solid: 0=Automatic direction and offset selection, 1=Specified direction, Automatic offset, 2= Automatic Direction, Specified offset. The option used to determine which curves of the surface will be embedded: 0=Outline only (skip interior curves/holes), 1=All Curves. The vector used to specify the direction to embed the face - only used if dirMode=1. The distance that the face will be embedded into the solid. Only used if dirMode=1 or dirMode=2. If True, the graphics will be redrawn to reflect the updated solids following this operation.
INT4 dirMode
INT4 curveOpt
REAL8 direction[0..2] REAL8 offset BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-366
feSolidCleanup
3.6.10.19 feSolidCleanup
feSolidCleanup
( solidSET, redundant, sliver, check ) Description: Performs various cleanup and checking on selected solids. Input: INT4 solidSET The ID of a set that contains a list of solid IDs that will be checked. Alternatively, if you specify a negative value, this is simply the ID of the single solid to check. If True, redundant geometry that is not required to define the solid will be removed. For example, extra lines or surfaces that were cut into the underlying surfaces will be removed. If True, an attempt will be made to remove any and all small sliver surfaces. This option is only available if the solid is a Parasolid solid. If True, the solids will be checked to ensure that they are still valid. This is especially important if you have attempted to remove sliver surfaces.
BOOL redundant
BOOL sliver
BOOL check Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feSolidCleanupAdvanced
API-367
3.6.10.20 feSolidCleanupAdvanced
feSolidCleanupAdvanced
( solidSET, RepairEdges, RepairEdgesVal, CleanSmoothDiscont, CleanSmoothDiscontVal, RemoveSelfInt, AllowSurfMod, RemoveSpikes, RemoveSpikesVal, RemoveSmallEdges, RemoveSmallEdgesVal, RemoveSmallFaces, RemoveSmallFacesVal, RemoveSliverFaces, RemoveSliverFacesVal, ConvertToAnalytic, ConvertToAnalyticVal, RecalcEdges, RecalcEdgesVal, MergeEdges, HealSurfaces, HealSurfacesVal, HealSmoothDiscont, HealSmoothDiscontVal, ReplaceMissing ) Description: Performs more advanced cleanup and checking on selected solids. Input: INT4 solidSET BOOL RepairEdges REAL8 RepairEdgesVal BOOL CleanSmoothDiscont REAL8 CleanSmoothDiscontVal BOOL RemoveSelfInt BOOL AllowSurfMod BOOL RemoveSpikes REAL8 RemoveSpikesVal BOOL RemoveSmallEdges REAL8 RemoveSmallEdgesVal BOOL RemoveSmallFaces REAL8 RemoveSmallFacesVal BOOL RemoveSliverFaces REAL8 RemoveSliverFacesVal BOOL ConvertToAnalytic REAL8 ConvertToAnalyticVal BOOL RecalcEdges REAL8 RecalcEdgesVal The ID of a set that contains a list of solid IDs that will be checked. Alternatively, if you specify a negative value, this is simply the ID of the single solid to check. If True, turn on Cleaning Repair Edges Size for repairing edges If True, turn on Cleaning Smooth or Split Discontinuities Angle for Smooth or Split Discontinuities If True, turn on Cleaning Remove Surface Self-Intersections If True, turn on Cleaning Allow Surface Modifications If True, turn on Small Feature Remove Spikes Size for spike removal If True, turn on Small Feature Remove Small Edges Size for small edge removal If True, turn on Small Feature Remove Small Faces Size for small face removal If True, turn on Small Feature Remove Sliver Faces Size for sliver face removal If True, turn on Geometry Simplification Convert to Analytic Geometry Value for Analytic Geometry conversion If True, turn on Edge Heal Recalculate Edge Geometry Value for recalculating edge geometry
API-368
feSolidCleanupAdvanced
( solidSET, RepairEdges, RepairEdgesVal, CleanSmoothDiscont, CleanSmoothDiscontVal, RemoveSelfInt, AllowSurfMod, RemoveSpikes, RemoveSpikesVal, RemoveSmallEdges, RemoveSmallEdgesVal, RemoveSmallFaces, RemoveSmallFacesVal, RemoveSliverFaces, RemoveSliverFacesVal, ConvertToAnalytic, ConvertToAnalyticVal, RecalcEdges, RecalcEdgesVal, MergeEdges, HealSurfaces, HealSurfacesVal, HealSmoothDiscont, HealSmoothDiscontVal, ReplaceMissing ) BOOL MergeEdges BOOL HealSurfaces REAL8 HealSurfacesVal BOOL HealSmoothDiscont REAL8 HealSmoothDiscontVal BOOL ReplaceMissing Output: None Return Code: FE_FAIL Remarks/Usage: For all numeric values used by this method, specifying a value of 0.0 will automatically use the default value that is shown in the dialog when you access this functionality from the user interface. Example: This example calls Advanced Cleanup on Solid 1, with all the default options that would be used had the functionality been accessed from the user interface. Sub Main Dim App As femap.model Set App = feFemap() App.feSolidCleanupAdvanced( -1, True, 0.0, True, 0.0, True, _ True, True, 0.0, True, 0.0, True, 0.0, True, 0.0, True, 0.0, _ True, 0.0, True, False, 0.0, False, 0.0, False ) End Sub Could not cleanup the selected solids. If True, turn on Edge Heal Merge Edges If True, turn on Surface Heal and Stitch Heal Surfaces Value for healing surfaces If True, turn on Surface Heal and Stitch Smooth or Split Discontinuities Value for Smoothing/Splitting Discontinuities during Surface Healing If True, turn on Surface Heal and Stitch Replace Missing Geometry
feSolidRemoveFace
API-369
3.6.10.21 feSolidRemoveFace
feSolidRemoveFace
( surfaceSET, aggressive, redraw ) Description: Removes faces from a solid and then heals the gap. Input: INT4 surfaceSET BOOL aggressive BOOL redraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not remove face. The ID of a set that contains a list of surface IDs that will be removed. Alternatively, if you specify a negative value, this is simply the ID of the single surface to remove. Attempts aggressive face removal. Redraw the model after command.
API-370
feGenerateCopy
feGenerateCopy
( entityTYPE, entitySET, alongVEC, nodeINC, match ) Description: Creates new entities by copying existing entities along a vector. Input: INT4 entityTYPE The entity type to copy: 3=Point, 4=Curve, 5=Surface, 6=Volume, 7=Node, 8=Element, 39=Solid. The ID of a set that contains a list of entity IDs that will be copied. Alternatively, if you specify a negative value, this is simply the ID of the single entity to copy. The components of the vector used to copy the entities. Components must be specified in global rectangular coordinates. This is not a unit vector; the entities are copied a distance equal to the length of the vector. Only used if entityTYPE=Element. When you are copying elements, there are two possible approaches that you can take. You can either copy the elements and all of the nodes that they are used to define them, or you can just copy the element connectivity onto another existing set of nodes. If you want to copy the nodes and elements, set nodeINC=0. If you want to copy the elements onto existing nodes, you should set nodeINC equal to the difference in nodeIDs from the nodes on the existing elements to the nodes on the new elements. If True, then loads and constraints on the original entities are copied to the newly created entities. If False, only the selected entities are duplicated. (only available in v8.2 and later)
INT4 entitySET
REAL8 alongVEC[0..2]
INT4 nodeINC
BOOL match Output: None Return Code: FE_FAIL Remarks/Usage: None Example:
feGenerateCopy
API-371
feGenerateCopy
( entityTYPE, entitySET, alongVEC, nodeINC, match ) None
API-372
feGenerateRadialCopy
3.6.11.2 feGenerateRadialCopy
feGenerateRadialCopy
( entityTYPE, entitySET, origVEC, length, match ) Description: Creates new entities by radially copying existing entities about an origin. Input: INT4 entityTYPE The entity type to copy: 3=Point, 4=Curve, 5=Surface, 6=Volume, 7=Node, 8=Element. Solids cannot be radially copied. The ID of a set that contains a list of entity IDs that will be copied. Alternatively, if you specify a negative value, this is simply the ID of the single entity to copy. The coordinates of the origin around which the radial copy will be performed. The coordinates must be in global rectangular. The radial distance to copy the entities. A positive value increases the distance from the origin. A negative value decreases the distance. If True, then loads and constraints on the original entities are copied to the newly created entities. If False, only the selected entities are duplicated. (only available in v8.2 and later)
INT4 entitySET
BOOL match Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feGenerateScale
API-373
3.6.11.3 feGenerateScale
feGenerateScale
( entityTYPE, entitySET, origVEC, scaleVEC, csysID, match ) Description: Creates new entities by scaling entities about a location. Input: INT4 entityTYPE The entity type to scale: 3=Point, 4=Curve, 5=Surface, 6=Volume, 7=Node, 8=Element, 39=Solid. The ID of a set that contains a list of entity IDs that will be scaled. Alternatively, if you specify a negative value, this is simply the ID of the single entity to scale. The coordinates of the origin around which the scale will be performed. The coordinates must be in the coordinate system specified in csysID - not necessarily global rectangular. The scaling values. The entries in this vector are the scale factors in the X,Y and Z coordinate directions of the csysID coordinate system. If you want a uniform scale, you must still set all three values to the same scale factor. The ID of a coordinate system that will be used to perform the scaling. Usually this will be 0=Global rectangular, unless you want to scale about some rotated set of axes. If True, then loads and constraints on the original entities are copied to the newly created entities. If False, only the selected entities are duplicated. (only available in v8.2 and later)
INT4 entitySET
REAL8 origVEC[0..2]
REAL8 scaleVEC[0..2]
INT4 csysID
BOOL match Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-374
feGenerateRotate
3.6.11.4 feGenerateRotate
feGenerateRotate
( entityTYPE, entitySET, origVEC, axisVEC, rotANGLE, transDIST, match ) Description: Creates new entities by rotating entities about an axis. Input: INT4 entityTYPE The entity type to rotate: 3=Point, 4=Curve, 5=Surface, 6=Volume, 7=Node, 8=Element, 39=Solid. The ID of a set that contains a list of entity IDs that will be rotated. Alternatively, if you specify a negative value, this is simply the ID of the single entity to rotate. The coordinates of the origin of the axis of rotation. Must be specified in global rectangular coordinates. The components of the axis of rotation, in global rectangular coordinates. The rotation will be in positive, right-hand rule sense about this axis. The angle of rotation about the axis vector, in degrees. The translation distance, through which the entities are translated along the rotation axis, as they are rotated. Usually this is zero. If True, then loads and constraints on the original entities are copied to the newly created entities. If False, only the selected entities are duplicated. (only available in v8.2 and later)
INT4 entitySET
REAL8 origVEC[0..2]
BOOL match Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feGenerateReflect
API-375
3.6.11.5 feGenerateReflect
feGenerateReflect
( entityTYPE, entitySET, origVEC, normVEC, trapWIDTH, match ) Description: Creates new entities by reflecting entities about a plane. Input: INT4 entityTYPE The entity type to reflect: 3=Point, 4=Curve, 5=Surface, 6=Volume, 7=Node, 8=Element, 39=Solid. The ID of a set that contains a list of entity IDs that will be reflected. Alternatively, if you specify a negative value, this is simply the ID of the single entity to reflect. The coordinates of the origin of the reflection plane. Must be specified in global rectangular coordinates. The components of the normal to the reflection plane, in global rectangular coordinates. It is not necessary for this axis to point toward (or away from) the existing entities - either vector will yield the same result. The trapWIDTH of the reflection plane. Entities that fall within this distance from the reflection plane will not be reflected. If True, then loads and constraints on the original entities are copied to the newly created entities. If False, only the selected entities are duplicated. (only available in v8.2 and later)
INT4 entitySET
REAL8 origVEC[0..2]
REAL8 normVEC[0..2]
REAL8 trapWIDTH
BOOL match Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-376
feGenerateReflect
API-377
3.7 Connection Methods
Connection Methods include:
API-378
feConnectAuto
feConnectAuto
( solidSET, linearTolerance, angleTolerance, strategy, bSelfConnect, bCombineAll, nConnectProp, bGlued ) Description: This function is obsolete. It is the same as calling feConnectAuto2( ) with connectType = 1. Refer to the documentation for that function for more information.
3.7.1.2 feConnectAuto2
feConnectAuto2
( solidSET, connectType, linearTolerance, angleTolerance, strategy, bSelfConnect, bCombineAll, nConnectProp, bGlued ) Description: Automatically generates connections between solids Input: The ID of a Set object that contains the IDs of solids to connect. Alternatively, if solidSET is negative, it is the ID of a single solid to use (although this will not do anything unless bSelfConnect is also True) The type of connections to search for 0=All, 1=Face to Face, 2=Edge to Face The maximum distance between adjacent faces to find connections. If 0.0, then use default. The maximum angle deviation between adjacent planar faces to still consider them for connection. If 0.0, then use default. A value between 1 and 5 that indicates the search strategy. You can also specify strategy = 0 to use the default strategy If True, allow connections between surfaces of the same solid If True, connections between faces of the same two solids will be combined into a single conneciton The ID of a Connection Property to be used for the connections (if nonzero, this Connection Property must exist). If specified as 0, a new default property will be created. Only used if nConnectProp is 0. If True, the default property will be a Glued type, otherwise a Contact type.
INT4 solidSET
INT4 connectType REAL8 linearTolerance REAL8 angeTolerance INT4 strategy BOOL bSelfConnect BOOL bCombineAll
INT32 nConnectProp
BOOL bGlued
feConnectAuto2
API-379
feConnectAuto2
( solidSET, connectType, linearTolerance, angleTolerance, strategy, bSelfConnect, bCombineAll, nConnectProp, bGlued ) Output: None Return Code: FE_FAIL FE_INVALID FE_NOT_EXIST Remarks/Usage: None Example: The following routine automatically connects all solids with a new Glued connection... Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim s As femap.Set Set s = App.feSet s.AddAll( FT_SOLID ) App.feConnectAuto( s.ID, 0.001, 1.0, 0, False, True, 0, True ) End Sub Creating connections failed The search strategy is invalid The Connection Property does not exist.
API-380
feConnectAuto2
feConnectAuto2
API-381
API-382
feLoadCombine
feLoadCombine
( fromSET, toSET, scale ) Description: Combines a Load set into another set Input: INT4 fromSET INT4 toSET REAL8 scale Output: None Return Code: FE_FAIL Remarks/Usage: The functionality of this method is identical to the Model, Load, Combine command. All restrictions on combinations and scale factors that apply to that command apply equally to this method. Example: None Could not combine the load set, most likely it does not exist. The ID of the Load Set to be combined The ID of the Load Set which will contain the combined loads. A scale factor to apply to the loads being combined. Normally set to 1.0 to simply combine loads.
feBCCombine
API-383
feBCCombine
( fromSET, toSET, overwrite ) Description: Combines a Constraint set into another set Input: INT4 fromSET INT4 toSET The ID of the Constraint Set to be combined The ID of the Constraint Set which will contain the combined constraints. If True, constraints in the toSET will be overwritten with any duplicate constraints on the same node. If False, degrees of freedom on the common nodes will be combined to form a new constraint. Does not apply to constraint equations.
BOOL overwrite
Output: None Return Code: FE_FAIL Remarks/Usage: The functionality of this method is identical to the Model, Constraint, Combine command. All restrictions on combinations that apply to that command apply equally to this method. Example: None Could not combine the constraint set, most likely it does not exist.
API-384
feOutputProcess
NOTE: This method is obsolete. There are many combinations of options that could be passed to this method that are invalid and will not work. Please switch to using one of the other OutputProcess methods that provide specific access to each of the processing methods.
feOutputProcess
( count, full_set, processing_method, approach, from_setID, from_vectorID, to_setID, to_vectorID, groupID, factor, overwrite, ply_summary, set_info ) Description: Provides the functionality that is available through the Model, Output, Process command to copy, combine, envelope, or convert output. Input: INT4 count The number of processing operations; that is, the number of entries in the other arrays. Set to True if the operations will process entire sets of output, or False if individual vectors are to be processed. If True, from_vectorID and to_vectorID are ignored. The type of processing to be done: 0=Copy, 1=Combine, 2=Linear, 3=RSS, 4=Convert, 5=Envelope, 6=Error Estimate. Additional approach required by certain methods. If processing_method=5,Envelope then (0=Max, 1=Min, 2=Max Abs). If processing_method=6, Error Estimate then (0=Max Diff, 1=Diff to Avg, 2=%Max Diff, 3=%Diff to Avg, 4=Norm% Max Diff, 5=Norm% Diff to Avg). If processing_method=4, Convert then (0=Avg, 1=Max). The ID of the output set to process. The ID of the output vector to process (not used if full_set=True). The ID of the output set where processed data will be created. The ID of the output vector where processed data will be created (not used if full_set=True). The ID of the group used to restrict output processing. If 0, all available output, on the full model is processed. The scale factor for linear and RSS combinations. The Skip Below value for Error Estimates. Flag to overwrite existing output if you are combining output.
BOOL full_set
INT4 processing_method
INT4 approach[0..count-1]
INT4 from_setID[0..count-1] INT4 from _vectorID[0..count1] INT4 to_setID[0..count-1] INT4 to_vectorID[0..count-1] INT4 groupID[0..count-1] REAL8 factor[0..count-1] BOOL overwrite[0..count-1]
feOutputProcess
API-385
feOutputProcess
( count, full_set, processing_method, approach, from_setID, from_vectorID, to_setID, to_vectorID, groupID, factor, overwrite, ply_summary, set_info ) BOOL ply_summary[0..count1] BOOL set_info[0..count-1] Output: None Return Code: FE_FAIL Remarks/Usage: Only combinations of options that are available in the Model, Output, Process command in FEMAP will correctly process information through the API. Example: None Could not process the requested information. For Envelope, if True, this will compute the ply summary information for laminate output. For Envelope, if True and doing full sets, this will compute the additional set summary information for the enveloped data.
API-386
feOutputProcessCopy
3.8.3.2 feOutputProcessCopy
feOutputProcessCopy
( bFullSet, from_setID, from_vectorID, to_setID ) Description: Allows you to Copy a single output set or vector. Input: BOOL bFullSet INT4 from_setID INT4 from _vectorID INT4 to_setID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not process the requested information. Set to True if the operation will process entire sets of output, or False if individual vectors are to be processed. If True, from_vectorID and to_setID are ignored. The ID of the output set to process. The ID of the output vector to process The ID of the Set to contain the resulting copy. If 0, a new Output Set will be created.
feOutputProcessMerge
API-387
3.8.3.3 feOutputProcessMerge
feOutputProcessMerge
( bFullSet, bOverwrite, nCount, from_setID, from_vectorID, to_setID ) Description: Allows you to Combine/Merge Output in Sets or Vectors Input: BOOL bFullSet Set to True if the operation will process entire sets of output, or False if individual vectors are to be processed. If True, from_vectorID and to_setID are ignored. If True, existing Output will be overwritten. If False, output will only be merged onto nodes/elements that have no output. The number of entries in from_setID and from_vectorID The IDs of the output sets to process. The IDs of the output vectors to process. The ID of the Set to contain the resulting copy. If 0, a new Output Set will be created.
BOOL bOverwrite INT4 nCount INT4 from_setID[0..nCount-1] INT4 from _vectorID[0..nCount-1] INT4 to_setID Output: None Return Code: FE_FAIL Remarks/Usage:
Each entry in from_setID and from_vectorID is used as a pair. For example from_setID[0] and from_vectorID[0] mean output in the vector from_vectorID[0] in from_setID[0]. Example: None
API-388
feOutputProcessLinearCombination
3.8.3.4 feOutputProcessLinearCombination
feOutputProcessLinearCombination
( bFullSet, nApproach, nCount, dScaleFactor, from_setID, from_vectorID, to_setID ) Description: Performs a linear combination, with a scale factor, of Output Sets or Vectors Input: BOOL bFullSet Set to True if the operation will process entire sets of output, or False if individual vectors are to be processed. If True, from_vectorID and to_setID are ignored. 0=Combine All Vectors in All Sets, 1=Combine All Vectors in Each Set, 2=Combine Each Vector across All Sets. Ignored and always =2 if bFullSet is True. The number of entries in dScaleFactor, from_setID and from_vectorID The scale factor to apply to each set or vector. The IDs of the output sets to process. The IDs of the output vectors to process. The ID of the Set to contain the resulting combination. If 0, a new Output Set will be created.
INT4 nApproach
INT4 nCount REAL8 dScaleFactor[0..nCount-1] INT4 from_setID[0..nCount-1] INT4 from _vectorID[0..nCount-1] INT4 to_setID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feOutputProcessRSSCombination
API-389
3.8.3.5 feOutputProcessRSSCombination
feOutputProcessRSSCombination
( bFullSet, nApproach, nCount, dScaleFactor, from_setID, from_vectorID, to_setID ) Description: Performs an RSS (root sum squared) combination, with a scale factor, of Output Sets or Vectors Input: BOOL bFullSet Set to True if the operation will process entire sets of output, or False if individual vectors are to be processed. If True, from_vectorID and to_setID are ignored. 0=Combine All Vectors in All Sets, 1=Combine All Vectors in Each Set, 2=Combine Each Vector across All Sets. Ignored and always =2 if bFullSet is True. The number of entries in dScaleFactor, from_setID and from_vectorID The scale factor to apply to each set or vector. The IDs of the output sets to process. The IDs of the output vectors to process. The ID of the Set to contain the resulting combination. If 0, a new Output Set will be created.
INT4 nApproach
INT4 nCount REAL8 dScaleFactor[0..nCount-1] INT4 from_setID[0..nCount-1] INT4 from _vectorID[0..nCount-1] INT4 to_setID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-390
feOutputProcessConvert
3.8.3.6 feOutputProcessConvert
feOutputProcessConvert
( approach, from_setID, from_vectorID, to_setID, to_vectorID, groupID ) Description: Allows you to Convert a single output vector between nodal and elemental locations. Input: INT4 approach INT4 from_setID INT4 from _vectorID INT4 to_setID INT4 to_vectorID INT4 groupID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not process the requested information. 0=Avg, 1=Max The ID of the output set to process. The ID of the output vector to process Not Used Not Used The ID of the group used to restrict output processing. If 0, all available output, on the full model is processed.
feOutputProcessEnvelope
API-391
3.8.3.7 feOutputProcessEnvelope
feOutputProcessEnvelope
( bFullSet, nType, nApproach, bEnvelopeInSets, bEnvelopeAcrossSets, bSetInfo, nCount, from_setID, from_vectorID, to_setID ) Description: Envelopes results in one or more Output Sets or Vectors to find worst-case scenarios. Input: BOOL bFullSet Set to True if the operation will process entire sets of output, or False if individual vectors are to be processed. If True, from_vectorID and to_setID are ignored. The Type of envelope to create 0=Max, 1=Min, 2=Max Absolute Value. 0=Envelope All Vectors in All Sets, 1=Envelope All Locations (like all Plys, all Stress Recovery Locations, ...), 2=Envelope Each Vector across All Sets. Ignored and always =2 if bFullSet is True. If True, an Envelope is created and stored in the same set as the original results Ignored and always False if bFullSet=True or nApproach=2 If True, results for similar vectors are enveloped across all of the selected sets. Ignored and always True if bFullSet=True or nApproach=2 If True extra output vectors are created which contain the ID of the set and possibly the location where the envelope value came from. The number of entries in from_setID and from_vectorID The IDs of the output sets to process. The IDs of the output vectors to process. Ignored if bFullSet=True The ID of the Set to contain the resulting combination. If 0, a new Output Set will be created. Ignored and always 0 if bFullSet=True or nApproach=2
INT4 nType
INT4 nApproach
BOOL bEnvelopeInSets
BOOL bEnvelopeAcrossSets
BOOL bSetInfo INT4 nCount INT4 from_setID[0..nCount-1] INT4 from _vectorID[0..nCount-1] INT4 to_setID Output: None Return Code: FE_FAIL Remarks/Usage:
API-392
feOutputProcessEnvelope
feOutputProcessEnvelope
( bFullSet, nType, nApproach, bEnvelopeInSets, bEnvelopeAcrossSets, bSetInfo, nCount, from_setID, from_vectorID, to_setID ) None Example: None
feOutputProcessErrorEstimate
API-393
3.8.3.8 feOutputProcessErrorEstimate
feOutputProcessErrorEstimate
( nMethod, from_setID, from_vectorID, groupID ) Description: Allows you to compute an Error Estimate of a single output vector. Input: INT4 nMethod INT4 from_setID INT4 from _vectorID INT4 groupID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not process the requested information. 0=Max Diff, 1=Diff to Avg, 2=%Max Diff, 3=%Diff to Avg, 4=Norm% Max Diff, 5=Norm% Diff to Avg The ID of the output set to process. The ID of the output vector to process The ID of the group used to restrict output processing. If 0, all available output, on the full model is processed.
API-394
feOutputFromLoad
3.8.3.9 feOutputFromLoad
feOutputFromLoad
( setID, loadType ) Description: Creates output from existing load information. Input: INT4 setID The ID of a set that contains a list of node or elements IDs that will be checked for loads to create the output. Alternatively, if you specify 0, all nodes/elements will be checked. The type of load to check to create output: Force=16, Displacement=32, Velocity=2048, Acceleration=64, Nodal Temperature=4096, Nodal HeatGen=2, Nodal Heat Flux=4, Elem Distributed Load=128, Pressure=256, Elem Temperature=8192, Elem Heat Gen 512, Elem Heat Flux=1024, Elem Convection=16384, Elem Radiation=32768, Fluid Pressure=131072, Fluid Tracking=262144, Fluid Fan Curve=2097152.
INT4 loadType
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not compute output.
feOutputTransform
API-395
3.8.3.10 feOutputTransform
feOutputTransform
( INT4 option, BOOL allSETS, INT4 outSET, INT4 outVEC, INT4 csysID, INT4 elemSET, INT4 alignMode, INT4 alignHyperElasticMode ) Description: Transforms existing output to another orientation. Input: Specifies the type of data transformation to be done: 1=Transform Vector data from Global Rectangular into the specified coordinate system, 2=Transform Vector data from Global Rectangular into Nodal Output Coordinate Systems 3=Transform Plate Force/Stress/Strain results into the current material orientation direction. 4=Transform Plate Force/Stress/Strain results into the direction specified by the projection of a specified coordinate system axis onto the element. 5=Transform Plate Force/Stress/Strain results into the direction specified by the projection of a specified vector onto the element 6=Transform Solid Force/Stress/Strain results into the specified coordinate system 7=Transform Solid Force/Stress/Strain results into the Material coordinate system If True, all output sets will be translated, and outSET is ignored. The output set in which data will be transformed. The output vector which will be transformed. If option=0, then this should be the ID of the total value. Used only if option=0. Specifies the coordinate system to transform into. The ID of the set that contains the element IDs to transform. Only used if option=1. Specifies the axis of the coordinate system to project onto planar elements if option=4. X=1,Y=2,Z=3 Specifies the Global Rectangular components of a vector to project onto planar elements if option=5
INT4 option
BOOL allSETS INT4 outSET INT4 outVEC INT4 csysID INT4 elemSET INT4 alignDOF REAL8 alignX REAL8 alignY REAL8 alignZ Output: None Return Code:
API-396
feOutputTransform
feOutputTransform
( INT4 option, BOOL allSETS, INT4 outSET, INT4 outVEC, INT4 csysID, INT4 elemSET, INT4 alignMode, INT4 alignHyperElasticMode ) FE_FAIL Remarks/Usage: The current output orientation may vary with element type, shape or output type. If more than one alignMode specification is required, this method must be called multiple times. Example: None Could not transform output.
feOutputCalculate
API-397
3.8.3.11 feOutputCalculate
feOutputCalculate
( outSET, ndelem, elemSET, title, IDvar, CASEvar, formula ) Description: Computes output values based on an equation that you provide. Input: INT4 outSET INT4 ndelem INT4 elemSET STRING title STRING IDvar STRING CASEvar The ID of the set that contains the output set IDs where the calculations will be performed. Specifies whether the calculation will create nodal or elemental data. (7=Nodal, 8=Elemental) The ID of the set that contains the nodes or elements where the output will be computed. The title of the output vectors to be created The name of the variable used as the Node/Element ID in the formula that you specify. The name of the variable used as the Output Set ID in the formula that you specify. The equation used to calculate the results. This must be specified in standard FEMAP form, using the two variables defined in IDvar and CASEvar.
STRING formula Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-398
feOutputConvertV92VectorID
3.8.3.12 feOutputConvertV92VectorID
feOutputConvertV92VectorID
( oldVecID ) Description: Some Output Vector IDs changed between FEMAP v9.2 and v9.3. This method takes a v9.2 (and before) vector ID and returns the equivalent v9.3 vector ID Input: INT4 oldVecID Output: None Return Code: newVecID Remarks/Usage: None Example: None The v9.3 (and later) vector ID The v9.2 (and before) vector ID that you want to convert.
feOutputForceBalance
API-399
3.8.3.13 feOutputForceBalance
feOutputForceBalance
( outSETS, boundarynodeSET, boundaryelemSET, csysID, aroundXYZ, numSETS, resultant ) Description: Returns the resulting force/moment information on a model interface defined by selected nodes/elements across selected output sets. Input: INT4 outSETS The ID of a Set object that contains the output sets to process. Alternatively, if you specify a negative value, this is simply the ID of the single output set to use. The ID of a Set object that contains the nodes on the model interface where the force balance will be computed. Alternatively, if you specify a negative value, this is simply the ID of a single node. The ID of a Set object that contains the elements on the model interface where the force balance will be computed. Alternatively, if you specify a negative value, this is simply the ID of a single element. The ID of the coordinate system to use. The coordinates in aroundXYZ must be specified in this coordinate system, and all results are returned in this coordinate system The coordinates of the location where the resulting force/moment are computed
INT4 boundarynodeSET
INT4 boundaryelemSET
INT4 csysID
The numbef of output set results contained in resultant The resulting force/moment resultant computed from the loads on the selected interface. For each output set selected in outSETS, there will be 6 consecutive entries in this array [Fx1, Fy1, Fz1, Mx1, My1, Mz1, Fx2, Fy2, ...]. All values are relative to the coordinate system selected by csysID.
REAL8 resultant[0..6*numSETS-1]
Return Code: FE_NO_MEMORY Remarks/Usage: This method requires that all selected output sets contain Nastran Grid Point Force Balance results. Example: None Insufficient memory to compute and return all Resultants.
API-400
3.9 Meshing Methods
Meshing Methods include:
Section 3.9.1, "Mesh Control" Section 3.9.2, "Meshing Geometry" Section 3.9.3, "Other Meshing"
feMeshSizePoint
API-401
feMeshSizePoint
( pointSET, meshSIZE ) Description: Sets mesh sizes on a selected set of points. Input: INT4 pointSET The ID of a set that contains a list of point IDs that will have mesh sizes defined. Alternatively, if you specify a negative value, this is simply the ID of the single point to use. Set this to the mesh size that you want to define at the points. The size should be in model units. Specify 0.0 to remove mesh sizes from the points.
REAL8 meshSIZE Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-402
feMeshSizeCurve
3.9.1.2 feMeshSizeCurve
feMeshSizeCurve
( curveSET, numElem, meshSize, minLine, minClosed, minOther, spacing, biasMethod, bias, biasLoc, customSize ) Description: Sets mesh sizes on a selected set of curves. Input: INT4 curveSET The ID of a set that contains a list of curve IDs that will have mesh sizes defined. Alternatively, if you specify a negative value, this is simply the ID of the single curve to use. The number of elements to mesh along the selected curves. If 0, then meshSize, minLine, minClosed and minOther determine the number of elements. If -1, then the mesh sizes are removed from the selected curves. The default mesh spacing used to compute the number of elements that will be meshed along the curve. Only used if numElem=0. The minimum number of elements to mesh along any curve that is a straight line. If you do not want to use this feature, simply set the value to 0 (or 1). Only used if numElem=0. The minimum number of elements to mesh along any curve that is closed - like a circle. If you do not want to use this feature, simply set the value to 0 (or 1). Only used if numElem=0. The minimum number of elements to mesh along any curve that is not a straight line, and is not closed - like arcs and splines. If you do not want to use this feature, simply set the value to 0 (or 1). Only used if numElem=0. If 0, then parametric spacing is used; otherwise ,constant length spacing is used. 0=Equal length spacing, 1=Linear Bias, 2=Geometric Bias. The bias value - greater than or equal to 1.0. A value of 1.0 is not biased. A value of 2.0 means that the largest element is approximately 2.0 times the length of the smallest. 0=Small elements at start of curve, 1=Small elements at end of curve, 2=Small elements at center of curve, 3=Small elements at both ends of curve. For constant length spacing, mesh sizes will be saved as a custom mesh size if this is True. Not used for parametric spacing.
INT4 numElem
REAL8 meshSIZE
INT4 minLine
INT4 minClosed
INT4 minOther
INT4 biasLoc
BOOL customSize
feMeshSizeCurve
API-403
feMeshSizeCurve
( curveSET, numElem, meshSize, minLine, minClosed, minOther, spacing, biasMethod, bias, biasLoc, customSize ) Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not define mesh sizes.
API-404
feMeshSizeSurface
3.9.1.3 feMeshSizeSurface
feMeshSizeSurface
( surfaceSET, replaceAll, meshSize, minEdge, maxAngle, maxOnSmall, smallSize, vertexAspect, mappedRefinement, growthFactor, refineRatio, refineSurf ) Description: Sets mesh sizes on a selected set of surfaces. Input: INT4 surfaceSET The ID of a set that contains a list of surface IDs that will have mesh sizes defined. Alternatively, if you specify a negative value, this is simply the ID of the single surface to use. If True, then mesh sizes will be replaced on all curves of all selected surfaces. If False, then only curves with no sizes defined will be sized. The default mesh spacing used to compute the number of elements that will be meshed along each curve. If you set the meshSIZE=0.0, then all of the other option settings except replaceAll are ignored. FEMAP automatically determines the default values, including the default mesh size. If you set meshSIZE to a negative value, then FEMAP uses the absolute value of that number as a scale factor on the default mesh size it calculates. For example meshSIZE=-0.5 means elements that are half the size of the default, meshSIZE=-2.0 means elements that are twice as big as the default. The minimum number of elements to mesh along any edge. Set to 0 if you do not want to specify a minimum. The maximum angle tolerance between the geometry tangent vector and the vector connecting consecutive mesh locations along the curves. Additional mesh locations are added along the curves to make sure this criterion is satisfied. Set to 0.0 if you do not want to use this type of mesh spacing adjustment. The maximum number of elements on any feature that is identified as small (depends on smallSize). Set to 0 if you do not want to adjust mesh sizes on small features. The maximum size of a small feature. Set to 0.0 if you do not want to adjust mesh sizes on small features. Used to adjust the mesh sizes at vertices that connect both short and long edges. Set to 0.0 if you do not want to do vertex aspect ratio adjustments. If used, mesh sizes at vertices are adjusted so that the ratio of the length of the longest element to the shortest element at a vertex is within the specified limit.
BOOL replaceAll
REAL8 meshSIZE
INT4 minEdge
REAL8 maxAngle
INT4 maxOnSmall
REAL8 smallSize
REAL8 vertexAspect
feMeshSizeSurface
API-405
feMeshSizeSurface
( surfaceSET, replaceAll, meshSize, minEdge, maxAngle, maxOnSmall, smallSize, vertexAspect, mappedRefinement, growthFactor, refineRatio, refineSurf ) If True, additional modifications are done to the mesh sizes on a surface that favor mapped meshing. This does not guarantee that mapped meshing sizes will be created. If you must have a mapped mesh, you need to set that approach on the surface before you size. The factor that is multiplied by the average curve element size to adjust the mesh size on the interior of a surface. Set to 0.0 to skip setting interior growth factors. The curvature-based mesh refinement ratio. Adjusts the mesh sizes along curves in areas of high curvature. Set to 0.0 to skip curvaturebased sizing. Set to True to also consider curvature requirements when sizing the interior of the mesh. You must specify a nonzero refineRatio, or this option will be ignored.
BOOL mappedRefinement
REAL8 growthFactor
REAL8 refineRatio
BOOL refineSurf Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-406
feMeshSizeSolid
3.9.1.4 feMeshSizeSolid
feMeshSizeSolid
( solidSET, replaceAll, meshSize, minEdge, maxAngle, maxOnSmall, smallSize, vertexAspect, mappedRefinement, growthFactor, refineRatio, refineSurf, matchAdjacent, hexMesh, adjustColor, removeSlaving ) Description: Sets mesh sizes on a selected set of solids. Input: INT4 solidSET The ID of a set that contains a list of solid IDs that will have mesh sizes defined. Alternatively, if you specify a negative value, this is simply the ID of the single solid to use. If True, then mesh sizes will be replaced on all curves of all selected solids. If False, then only curves with no sizes defined will be sized. The default mesh spacing used to compute the number of elements that will be meshed along each curve. If you set the meshSIZE=0.0 (or negative), then all of the other option settings except replaceAll, matchAdjacent, hexMesh, adjustColor and removeSlaving are ignored. FEMAP automatically determines the default values, including the default mesh size. If you set meshSIZE to a negative value, then FEMAP uses the absolute value of that number as a scale factor on the default mesh size it calculates. For example meshSIZE=-0.5 means elements that are half the size of the default, meshSIZE=-2.0 means elements that are twice as big as the default. The minimum number of elements to mesh along any edge. Set to 0 if you do not want to specify a minimum. The maximum angle tolerance between the geometry tangent vector and the vector connecting consecutive mesh locations along the curves. Additional mesh locations are added along the curves to make sure this criterion is satisfied. Set to 0.0 if you do not want to use this type of mesh spacing adjustment. The maximum number of elements on any feature that is identified as small (depends on smallSize). Set to 0 if you do not want to adjust mesh sizes on small features. The maximum size of a small feature. Set to 0.0 if you do not want to adjust mesh sizes on small features. Used to adjust the mesh sizes at vertices that connect both short and long edges. Set to 0.0 if you do not want to do vertex aspect ratio adjustments. If used, mesh sizes at vertices are adjusted so that the ratio of the length of the longest element to the shortest element at a vertex is within the specified limit.
BOOL replaceAll
REAL8 meshSIZE
INT4 minEdge
REAL8 maxAngle
INT4 maxOnSmall
REAL8 smallSize
REAL8 vertexAspect
feMeshSizeSolid
API-407
feMeshSizeSolid
( solidSET, replaceAll, meshSize, minEdge, maxAngle, maxOnSmall, smallSize, vertexAspect, mappedRefinement, growthFactor, refineRatio, refineSurf, matchAdjacent, hexMesh, adjustColor, removeSlaving ) If True, additional modifications are done to the mesh sizes on a surface that favor mapped meshing. This does not guarantee that mapped meshing sizes will be created. If you must have a mapped mesh, you need to set that approach on the surface before you size. The factor that is multiplied by the average curve element size to adjust the mesh size on the interior of a surface. Set to 0.0 to skip setting interior growth factors. The curvature-based mesh refinement ratio. Adjusts the mesh sizes along curves in areas of high curvature. Set to 0.0 to skip curvaturebased sizing. Set to True to also consider curvature requirements when sizing the interior of the mesh. You must specify a nonzero refineRatio or this option will be ignored. Set to True to automatically find adjacent surfaces between multiple solids that you are sizing. The matched surfaces will automatically have a Linked approach defined. Set to True if you want to size for hex meshing. Set to False to size for tetrahedral meshing. Set to True if you want to change the surface colors to indicate the status and success of the mesh sizing. This is especially important when sizing for hex meshing. Set to True to remove any previous Linked approaches on the surfaces of the solids that you are sizing.
BOOL mappedRefinement
REAL8 growthFactor
REAL8 refineRatio
BOOL refineSurf
BOOL matchAdjacent
BOOL hexMesh
BOOL adjustColor
BOOL removeSlaving Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-408
feMeshAttrPoint
3.9.1.5 feMeshAttrPoint
feMeshAttrPoint
( pointSET, propID ) Description: Sets mesh attributes on a selected set of points. Input: INT4 pointSET The ID of a set that contains a list of point IDs that will have mesh attributes defined. Alternatively, if you specify a negative value, this is simply the ID of the single point to use. Specifies the ID of the property to use as a meshing attribute at the selected points. Set propID=0 to remove meshing attributes from the points. If nonzero, this must be the ID of a property of an element type that is compatible with point meshing - a mass element, for example.
INT4 propID
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not define mesh attribute.
feMeshAttrCurve
API-409
3.9.1.6 feMeshAttrCurve
feMeshAttrCurve
(curveSET, propID, Orient, Offset1, Offset2, OrientType, OffsetType, Release1, Release2) Description: Sets mesh attributes on a selected set of curves. Input: INT4 curveSET The ID of a set contains a list of curve IDs that will have mesh attributes defined. Alternatively, if you specify a negative value, this is simply the ID of the single curve to use. Specifies the ID of the property to use as a meshing attribute at the selected curves. Set propID=0 to remove meshing attributes from the curves. If nonzero, this must be the ID of a property of an element type that is compatible with curve meshing - a beam element, for example. The orientation vector meshing attribute. Either a location or vector (based on offset type), specified in global rectangular coordinates. The meshing attribute defining the offset to be applied to elements. Offset1[0..2] is at the beginning of the curve, Offset2[0..2] is at the end. Specified in global rectangular coordinates. If doing radial offsets, Offset1[0..2] contains the radial origin; Offset2[0] contains the radial offset distance. Type of orientation for property attribute: 0=Orient By Vector, 1=Orient By Location, 2=Orient By Vector, Reversed Element Direction, 3=Orient By Location, Reversed Element Direction. Type of offset for property attribute: 0=Offset by Vector, 1=Offset Radial, 2=Offset by Location. The release flags for the start and end of the curve. Nonzero if the associated degree of freedom is released. Release1[0..5] is at the beginning of the curve; Release2[0..5] is at the end.
INT4 propID
REAL8 Orient[0..2]
INT4 OrientType
INT4 OffsetType INT4 Release1[0..5] INT4 Release2[0..5] Output: None Return Code: FE_FAIL Remarks/Usage:
Only element/property types with the appropriate orient/offset/release options available can have those options defined using this method. For example, you cannot add offsets to rod elements, because they are not available.
API-410
feMeshAttrCurve
feMeshAttrCurve
(curveSET, propID, Orient, Offset1, Offset2, OrientType, OffsetType, Release1, Release2) Example: None
feMeshAttrSurface
API-411
3.9.1.7 feMeshAttrSurface
feMeshAttrSurface
( surfaceSET, propID, offset ) Description: Sets mesh attributes on a selected set of surfaces. Input: INT4 surfaceSET The ID of a set that contains a list of surface IDs that will have mesh attributes defined. Alternatively, if you specify a negative value, this is simply the ID of the single surface to use. Specifies the ID of the property to use as a meshing attribute at the selected surfaces. Set propID=0 to remove meshing attributes from the surfaces. If nonzero, this must be the ID of a property of an element type that is compatible with surface meshing - a planar element, for example. The offset to be applied to elements meshed on this surface. Normally this is specified as 0 - the elements are meshed directly on the surface. Offsets can only be applied to certain planar elements such as plates.
INT4 propID
REAL8 offset
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not define mesh attribute.
API-412
feMeshAttrSolid
3.9.1.8 feMeshAttrSolid
feMeshAttrSolid
( solidSET, propID ) Description: Sets mesh attributes on a selected set of solids or volumes. Input: INT4 solidSET The ID of a set that contains a list of solid (or volume) IDs that will have mesh attributes defined. Alternatively, if you specify a negative value, this is simply the ID of the single solid to use. Specifies the ID of the property to use as a meshing attribute in the selected solids or volumes. Set propID=0 to remove meshing attributes from the solids. If nonzero, this must be the ID of a property of an element type that is compatible with solid meshing - a solid element, for example.
INT4 propID
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not define mesh attribute.
feMeshApproachSurface
API-413
3.9.1.9 feMeshApproachSurface
feMeshApproachSurface
( surfaceSET, approach, approachData ) Description: Sets the meshing approach on a selected set of surfaces. Input: INT4 surfaceSET The ID of a set that contains a list of surface IDs that will have mesh approaches defined. Alternatively, if you specify a negative value, this is simply the ID of the single surface to use. The meshing approach for the surface: 0=Not Specified, 1=FreeParametric, 2=Free-Planar, 3=Mapped-Four Corner, 4=MappedThree Corner, 5=Mapped-Three Corner Fan, 6=Link to Surface, 7=Fast Tri-Parametric, 8=Fast Tri-Planar. The data for various approaches. For the mapped approaches, these are the point IDs defining the corners of the mapped mesh. For the Link to Surface approach, approachData[0] is the ID of the surface that this surface is linked to.
INT4 approach
INT4 approachData
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not define mesh approach.
API-414
feMeshPoint
feMeshPoint
( pointSET, meshElem, propID ) Description: Meshes a selected set of points. Input: INT4 pointSET The ID of a set that contains a list of point IDs that will be meshed. Alternatively, if you specify a negative value, this is simply the ID of the single point to mesh. If True, then nodes and elements will be generated on the selected points. If False, only nodes will be generated. Specifies the ID of the property to use for elements as they are created. If you want to use meshing attributes, set propID=0. In this case, all selected points must have meshing attributes defined or they will not be meshed. The propID property must be compatible with point meshing.
BOOL meshElem
INT4 propID
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: Could not mesh points.
feMeshPoint
API-415
feMeshPoint
( pointSET, meshElem, propID ) The following example meshes each point in a model with a mass element. The total mass added to all points is 25 pounds. Sub Main Dim App As femap.model Set femap = GetObject(, "femap.model") Dim rc As Long Dim pr As Object Set pr = femap.feProp() Dim pt As Object Set pt = App.feSet() pt.AddAll (3) 'Pick all points pr.Type = 27 ' Mass Type pr.Title = "25 Lb. Mass" pr.pval(7) = 25 / pt.Count() 'Total=25 pound/Number of Points pr.Put (pr.NextEmptyID) ' Create new property rc = App.feMeshPoint(pt.ID, True, pr.ID) 'Mesh the points App.feViewRegenerate(0) End Sub
API-416
feMeshCurve
3.9.2.2 feMeshCurve
feMeshCurve
( curveSET, meshElem, propID, orient ) Description: Meshes a selected set of curves. Input: INT4 curveSET The ID of a set that contains a list of curve IDs that will be meshed. Alternatively, if you specify a negative value, this is simply the ID of the single curve to mesh. If True, then nodes and elements will be generated on the selected curves. If False, only nodes will be generated. Specifies the ID of the property to use for elements as they are created. If you want to use meshing attributes, set propID=0. In this case, all selected curves must have meshing attributes defined or they will not be meshed. The propID property must be compatible with curve meshing. Set propID=-1 to automatically mesh with plot-only elements, which do not require other property information. The components of the element orientation vector, in global rectangular coordinates. This is only used for those element types that require orientation - like bars and beams.
BOOL meshElem
INT4 propID
REAL8 orient[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: None Example:
feMeshCurve
API-417
feMeshCurve
( curveSET, meshElem, propID, orient ) The following example meshes each curve in a model with bar elements. It establishes a mesh size of 0.1 along each curve, creates a property, and meshes the curves. Sub Main Dim App As femap.model Set App = GetObject(, "femap.model") Dim rc As Long Dim pr As Object Set pr = App.feProp() Dim pt As Object Set pt = App.feSet() Dim orient(2) As Double Dim vOrient As Variant orient(0) orient(1) orient(2) vOrient = = 1 = 1 = 0.5 orient
pt.AddAll (4) pr.Type = 2 pr.Title = "Bar" pr.pval(0) = 0.125 pr.pval(1) = 10.3 pr.pval(2) = 0.5 pr.Put (pr.NextEmptyID) rc = App.feMeshSizeCurve(pt.ID,0,0.1,0,0,0,0,0,1#,0,False) rc = App.feMeshCurve(pt.ID, True, pr.ID, vOrient) App.feViewRegenerate(0) End Sub
API-418
feMeshSurface2
3.9.2.3 feMeshSurface2
feMeshSurface2
( surfaceSET, propID, elemShape, bAllowMapped, beDefaults ) Description: Meshes a selected set of surfaces. This function replaces feMeshSurface( ) Input: INT4 surfaceSET The ID of a set that contains a list of surface IDs that will be meshed. Alternatively, if you specify a negative value, this is simply the ID of the single surface to mesh. Specifies the ID of the property to use for elements as they are created. If you want to use predefined meshing attributes, set propID=0. In this case, all selected surfaces must have meshing attributes defined or they will not be meshed. The propID property must be compatible with surface meshing. The shape of the elements to mesh. Must be 2=Tria3, 3=Tria6, 4=Quad4, 5=Quad8 or set to 0 to use the shape that is predefined on the meshing attributes. If True, mapped meshing of the surfaces is allowed, otherwise it is not. This argument is ignored if elemShape=0 If True, all meshing attributes are reset to their defaults prior to applying the propID, elemShape and bAllowMapped settings. Normally this argument should be False to use the existing attributes.
INT4 propID
INT4 elemShape
BOOL bAllowMapped
BOOL bResetDefaults Output: None Return Code: FE_FAIL FE_INVALID FE_NOT_EXIST Remarks/Usage: None Example:
Could not mesh surfaces. The value specified for elemShape is invalid The property specified does not exist.
feMeshSurface2
API-419
feMeshSurface2
( surfaceSET, propID, elemShape, bAllowMapped, beDefaults ) The following example meshes each surface on Solid 1 in a model. It requires the mesh size to be already established, but it creates a plate property with a 0.1 thickness and meshes the surfaces with quads. Sub Main Const FGD_Surface_onSolid = 78 Dim Set Dim Dim Set Dim Set App As femap.model App = GetObject(, "femap.model") rc As Long pr As Object pr = App.feProp() pt As Object pt = App.feSet()
rc = pt.AddRule(1, FGD_Surface_onSolid) pr.Type = 17 pr.Title = "0.1 Plate" pr.pval(0) = 0.1 pr.Put (pr.NextEmptyID) rc=App.feMeshSurface2(pt.ID,pr.ID,FTO_QUAD4,True,False) App.feViewRegenerate(0) End Sub
API-420
feMeshSurface
feMeshSurface
( surfaceSET, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, midsideGeom, midsideAngle, smoothLaplacian, smoothIter, smoothTol ) Description: Meshes a selected set of surfaces. Input: INT4 surfaceSET The ID of a set that contains a list of surface IDs that will be meshed. Alternatively, if you specify a negative value, this is simply the ID of the single surface to mesh. Specifies the ID of the property to use for elements as they are created. If you want to use meshing attributes, set propID=0. In this case, all selected surfaces must have meshing attributes defined or they will not be meshed. The propID property must be compatible with surface meshing. Set propID=-1 to automatically mesh with plot-only elements, which do not require other property information. The minimum number of elements between boundaries during mesh generation. Not used for fast-tri mesher. The maximum allowable element aspect ratio. Not used for fast-tri mesher. Boundaries/surfaces with more than this number of nodes on the boundary are quick-cut. Not used for fast-tri mesher. The mesher to use when meshing the surfaces. (0=Triangle, 1=Quad, 2=Fast-Triangle). The maximum angular deviation from 90 degrees allowed in a quad before it is split into triangles. Only applies to quad mesher. If True and you are meshing with parabolic elements, midside nodes will be projected toward the geometry. The maximum angle formed by the edge of the element as the midside nodes are projected onto the geometry. If midsideAngle=0.0 and midsideGeom=True, then midside nodes will be projected completely onto the geometry regardless of the distortion introduced in the elements. If True, Laplacian smoothing is performed. If False, centroidal smoothing is used. The number of smoothing iterations to perform. Set to 0 to skip smoothing.
INT4 propID
INT4 minBetween REAL8 maxAspect INT4 maxQuickNodes INT4 meshApproach REAL8 quadAngle BOOL midsideGeom
REAL8 midsideAngle
feMeshSurface
API-421
feMeshSurface
( surfaceSET, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, midsideGeom, midsideAngle, smoothLaplacian, smoothIter, smoothTol ) INT4 smoothTol Output: None Return Code: FE_FAIL Remarks/Usage: Could not mesh surfaces. The smoothing tolerance. Smoothing will stop if node movement during a smoothing pass falls below this tolerance.
rc = pt.AddRule(1, FGD_Surface_onSolid) pr.Type = 17 pr.Title = "0.1 Plate" pr.pval(0) = 0.1 pr.Put (pr.NextEmptyID) rc=App.feMeshSurface(pt.ID,pr.ID,1,2,30,1,45,0,0,True,20,.01) App.feViewRegenerate(0) End Sub
API-422
feMeshSurfaceByAttributes
3.9.2.5 feMeshSurfaceByAttributes
feMeshSurfaceByAttributes
( surfaceSET ) Description: Meshes a selected set of surfaces using its stored attributes. Input: INT4 surfaceSET Output: None Return Code: FE_FAIL Remarks/Usage: None Example: Could not mesh surfaces. The ID of a set that contains a list of surface IDs that will be meshed using their saved attributes. Alternatively, if you specify a negative value, this is simply the ID of the single surface to mesh.
feMeshTetSolid
API-423
3.9.2.6 feMeshTetSolid
feMeshTetSolid
( entityTYPE, entitySET, propID, surfaceMeshOnly, makeMidside, tetGrowth, checkSurfElem, deleteSurfElem, midsideGeom, midsideAngle, allocateElem ) Description: Meshes a selected set of solids (or surfaces or planar elements) with tetrahedral elements. Input: INT4 entityTYPE The type of entities being meshed that are contained in entitySET. For entity information, see Section 3.3.6, "Entity Types". Can be FT_SOLID, FT_SURFACE or FT_ELEM. The ID of a set that contains a list of solid/surface/element IDs that will be meshed. Alternatively, if you specify a negative value, this is simply the ID of the single entity to mesh - probably only for solids. In any case, the list of entities must form one or more closed solid volumes. Specifies the ID of the property to use for tetrahedral elements as they are created. If you want to use meshing attributes, set propID=0. In this case, all selected solids must have meshing attributes defined or they will not be meshed. This only works if entityTYPE=FT_SOLID. The propID property must be compatible with solid meshing. If True, only surface elements are generated, and the meshing process stops before generating tetrahedra. If True, the solids will have midside nodes created. Otherwise, linear elements are created. The tetrahedral growth factor. Numbers larger than 1.0 mean that the elements on the inside of the solid will be larger than those on the outside. It is usually best to use a factor slightly larger than 1.0. Default value is 1.5 - if you specify tetGrowth=0.0. Checks the surface elements for validity prior to tet meshing if True. Not usually required if meshing solids, but should be done for surface or element meshing. Set to True if you want to delete the surface elements that are being generated or meshed. If True, and you are meshing with parabolic elements, midside nodes will be projected toward the geometry.
INT4 entitySET
INT4 propID
REAL8 tetGrowth
BOOL checkSurfElem
API-424
feMeshTetSolid
feMeshTetSolid
( entityTYPE, entitySET, propID, surfaceMeshOnly, makeMidside, tetGrowth, checkSurfElem, deleteSurfElem, midsideGeom, midsideAngle, allocateElem ) The maximum angle formed by the edge of the element as the midside nodes are projected onto the geometry. If midsideAngle=0.0 and midsideGeom=True, then midside nodes will be projected completely onto the geometry regardless of the distortion introduced in the elements. Estimated maximum number of tetrahedral elements to be generated. This option simply controls memory allocation for the mesher - more elements may be generated. You should usually set this value to 0. This will cause the mesher to automatically estimate the memory requirements from the surface mesh.
REAL8 midsideAngle
INT4 allocateElem
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not mesh solid.
feMeshHexSolid
API-425
3.9.2.7 feMeshHexSolid
feMeshHexSolid
( solidSET, propID, surfaceMeshOnly, makeMidside, checkSurfElem, deleteSurfElem, midsideGeom, midsideAngle ) Description: Meshes a selected set of solids with hexahedral elements. Input: INT4 solidSET The ID of a set that contains a list of solid IDs that will be meshed. Alternatively, if you specify a negative value, this is simply the ID of the single entity to mesh. Specifies the ID of the property to use for hexahedral elements as they are created. If you want to use meshing attributes, set propID=0. In this case, all selected solids must have meshing attributes defined or they will not be meshed. The propID property must be compatible with solid meshing. If True, only surface elements are generated, and the meshing process stops before generating hex elements. If True, the solids will have midside nodes created. Otherwise, linear elements are created. Checks the surface elements for validity prior to tet meshing if True. Not usually required if meshing solids, but should be done for surface or element meshing. Set to True if you want to delete the surface elements that are being generated or meshed. If True and you are meshing with parabolic elements, midside nodes will be projected toward the geometry. The maximum angle formed by the edge of the element as the midside nodes are projected onto the geometry. If midsideAngle=0.0 and midsideGeom=True, then midside nodes will be projected completely onto the geometry regardless of the distortion introduced in the elements.
INT4 propID
BOOL checkSurfElem
REAL8 midsideAngle
Output: None Return Code: FE_FAIL Remarks/Usage: For this function to work, the solids must be compatible with, and properly sized for hex meshing. Could not mesh solid.
API-426
feMeshHexSolid
feMeshHexSolid
( solidSET, propID, surfaceMeshOnly, makeMidside, checkSurfElem, deleteSurfElem, midsideGeom, midsideAngle ) Example: This example hex meshes all of the solids in a model with parabolic hex elements and projects the midside nodes onto the surfaces. Sub Main Dim Set Dim Set App As femap.model App = GetObject(,"femap.model") so As Object so = App.feSet()
so.AddAll (39) Set pr = App.feProp() pr.Type = 25 pr.Title = "Bricks" pr.Put (pr.NextEmptyID) rc=femap.feMeshHexSolid(so.ID,pr.ID, _ False,True,False,True,True,0#) App.feViewRegenerate(0) End Sub
feMeshHexSolidFromElement
API-427
3.9.2.8 feMeshHexSolidFromElement
feMeshHexSolidFromElement
( baseSET, topSET, propID, numLayers, match1, match2, makeMidside, checkSurfElem, deleteSurfElem ) Description: Meshes selected sets of surface elements with hexahedral elements. Input: The ID of a set that contains a list of surface element IDs that will be used as the base of the hex mesh. The base of the hex mesh is the set of elements that form the pattern that will be extruded into the hex elements. The ID of a set that contains a second list of surface element IDs that will be used as the top of the hex mesh. The top set can be selected in two forms. It can either contain a set of elements that match the base but is located at the opposite end of the extrusion, or it can contain all of the elements (other than those in the base) that enclose a complete, closed volume. If you use the true top option (not all the enclosing elements), then the base may not contain any holes. Specifies the ID of the property to use for hexahedral elements as they are created. If you want to use meshing attributes, set propID=0. In this case, all selected solids must have meshing attributes defined or they will not be meshed. The propID property must be compatible with solid meshing. Only used if topSET only includes the elements that match baseSET at the other end of the extrusion. This is the number of layers of hexahedral elements that will be generated. Only used if topSET only includes the elements that match baseSET at the other end of the extrusion. These should be both set to 0 if you want to automatically match the element patterns in the base and top meshes. If you have a symmetric or rotated mesh, it may be necessary to set these values to node IDs that will match the base mesh to the top. If not 0, match1 must be a node ID from the baseSET that matches the match2 nodeID from the topSET. If True, the solids will have midside nodes created. Otherwise, linear elements are created. Checks the surface elements for validity prior to tet meshing if True. Not usually required if meshing solids, but should be done for surface or element meshing.
INT4 baseSET
INT4 topSET
INT4 propID
INT4 numLayers
BOOL makeMidside
BOOL checkSurfElem
API-428
feMeshHexSolidFromElement
feMeshHexSolidFromElement
( baseSET, topSET, propID, numLayers, match1, match2, makeMidside, checkSurfElem, deleteSurfElem ) BOOL deleteSurfElem Output: None Return Code: FE_FAIL Remarks/Usage: None Example: This example hex meshes between the surface mesh that is on Surface 1 and the mesh on Surface 5. It creates 17 layers of hex elements between the surfaces. Sub Main Const FGD_Elem_atSurface = 44 Dim Set Dim Dim Set Set App As femap.model App = GetObject(, "femap.model") b As Object t As Object b = App.feSet() t = App.feSet() Could not mesh solid. Set to True if you want to delete the surface elements that are being generated or meshed.
iSurf1 = 1 iSurf2 = 5 nLayers = 17 rc = b.AddRule(iSurf1, FGD_ELEM_ATSURFACE) rc = t.AddRule(iSurf2, FGD_ELEM_ATSURFACE) Set pr = App.feProp() pr.type = 25 pr.title = "Bricks" pr.Put (pr.NextEmptyID) rc=App.feMeshHexSolidFromElement(b.ID,t.ID,pr.ID, _ nLayers,0,0,True,False,True)App.feViewRegenerate(0) End Sub
feMeshBetween
API-429
feMeshBetween
( propID, genMode, shape, rightSplit, alternate, allQuad, logSpacing, numCorners, numNodes, bias, nodeInc, cornerXYZ ) Description: Meshes between selected coordinate locations. No geometry is required. Input: INT4 propID Specifies the ID of the property to use for elements as they are created. The propID property must be compatible with the type of elements that you will be creating, and the shape value. The mesh generation mode: 0=Nodes Only, 1=Elements only on existing Nodes, 2=Both Nodes and Elements. The shape of the elements to generate: 0=Line, 2=Tria, 4=Quad, 6=Tetra, 7=Wedge, 8=Brick. Not used if only generating nodes. Only used for Tria,Tetra and Wedge shapes. If True, indicates that the first elements should be split along a right-hand diagonal. Only used for Tria,Tetra and Wedge shapes. If True, indicates that the element split direction should alternate with each group of elements, eliminating any biasing in the mesh patterns. Indicates that you want to use the alternate all-quad meshing scheme on a mesh that would otherwise generate triangular or wedge elements. This also requires compatible numbers of nodes along all edges. Only used if you are generating nodes (or nodes and elements), and using a bias factor other than 1.0. If True, indicates that you want the mesh spacing graded in a logarithmic manner. The number of corners in the meshing region. Available values are: 2 (for line elements), 3 or 4 (for planar elements), 4,5,6, or 8 for (solid elements). The number of nodes in each of the meshing directions. Only the entries required for the number of corners are used. For example, if you specify 2 corners, only numNodes[0] is used. If you specify 3 corners, numNodes[0] and numNodes[1] will be used. The biasing factor in each of the meshing directions. Set to 1.0 for no biasing.
BOOL alternate
BOOL allQuad
BOOL logSpacing
INT4 numCorners
INT4 numNodes[0..2]
REAL8 bias[0..2]
API-430
feMeshBetween
feMeshBetween
( propID, genMode, shape, rightSplit, alternate, allQuad, logSpacing, numCorners, numNodes, bias, nodeInc, cornerXYZ ) Only used if genMode=1 (generate elements only). In this case, nodeINC[0] must be the ID of the first node in the pattern to be meshed with elements. nodeINC[1] and nodeINC[2] are the additional node increments in second and third (if required) meshing directions. These will be 0, if the nodes are numbered consecutively. The coordinates of the corner locations, in global rectangular coordinates. Each corner is specified in consecutive locations in this array. For example, the first corner is in cornerXYZ[0..2], the second is in cornerXYZ[3..5], the third in cornerXYZ[6..8] and so on.
INT4 nodeINC[0..2]
REAL8 cornerXYZ[0..23]
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not mesh between corners.
feMeshClosestLink
API-431
3.9.3.2 feMeshClosestLink
feMeshClosestLink
( fromSET, toSET, connectWith, orient, dof, reverse ) Description: Meshes connections based on the shortest distance between two sets of nodes. Input: A set containing the node IDs of the nodes to mesh from. Each node in this set will have one element connecting from it to the closest node in the toSET. Alternatively, if you specify a negative value, this is simply the ID of the single node to mesh. A set containing the node IDs to mesh to. The closest node from this set will be matched with the node from the fromSET. Alternatively, if you specify a negative value, this is simply the ID of the single node to mesh. The type of element to use for the connection: 1=Constraint Equation, 2=Rigid, 3=Line Element. If you choose constraint equations, you must have an active constraint set for this method to work. The orientation vector used for elements created with this method (if required by connectWith). The degrees of freedom (DOF) to connect. Set values to 1 for DOF to connect; 0 for DOF to skip. Reverses the connection order: connections are still made from the fromSET to the toSET, but the element nodal order is reversed.
INT4 fromSET
INT4 toSET
INT4 connectWith
REAL8 orient[0..2] INT4 dof[0..5] BOOL reverse Output: None Return Code: FE_FAIL Remarks/Usage:
If you want to simulate the same capability found in the Multiple Link command, simply call this function multiple times, using negative nodeIDs in place of the fromSET and toSET. Example: None
API-432
feMeshCoincidentLink
3.9.3.3 feMeshCoincidentLink
feMeshCoincidentLink
( fromSET, toSET, connectWith, orient, dof, tolerance ) Description: Meshes connections between coincident nodes. Input: INT4 fromSET A set containing the node IDs of the nodes to mesh. Only nodes in this set that are coincident (within the specified tolerance) with another node in the set are meshed. The type of element to use for the connection: 1=Constraint Equation, 2=Rigid, 3=Line Element, 4=Gap Element. If you choose constraint equations, you must have an active constraint set for this method to work. The orientation vector used for elements created with this method (if required by connectWith). The degrees of freedom (DOF) to connect. Set values to 1 for DOF to connect; 0 for DOF to skip. The coincident node tolerance. Only nodes within this tolerance of each other are meshed.
INT4 connectWith
REAL8 orient[0..2] INT4 dof[0..5] REAL8 tolerance Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feMeshUnzip
API-433
3.9.3.4 feMeshUnzip
feMeshUnzip
( fromSET, toSET, connectWith, orient, dof ) Description: Unzips an existing mesh and places connecting elements at the new, unzipped coincident nodes. Input: INT4 fromSET A set containing the element IDs on the primary side of the interface. Alternatively, if you specify a negative value, this is simply the ID of the single element to use. A set containing the node IDs to unzip. Each of these nodes will be duplicated and nodes on the elements that were not selected as the primary side will be replaced with the copies. Connecting elements will be created between the original and new nodes. The type of element to use for the connection: 0=None, 1=Constraint Equation, 2=Rigid, 3=Line Element, 4=Gap Element. If you choose constraint equations, you must have an active constraint set for this method to work. If you choose None, the mesh will be unzipped, but no connection elements will be created. The orientation vector used for elements created with this method (if required by connectWith). The degrees of freedom (DOF) to connect. Set values to 1 for DOF to connect; 0 for DOF to skip.
INT4 toSET
INT4 connectWith
REAL8 orient[0..2] INT4 dof[0..5] Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-434
feMeshTransition
3.9.3.5 feMeshTransition
feMeshTransition
( useNodes, entCount, entID, edgeNum, edgeBias, edgeSize, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, smoothLaplacian, smoothIter, smoothTol ) Description: Meshes between nodes or line elements that form a closed boundary. Input: BOOL useNodes INT4 entCount INT4 entID[0..entCount-1] If True, then entID contains a list of nodes used to define the boundary; otherwise, entID contains a list of line elements. The number of items contained in entID, edgeNum, edgeBias, and edgeSize. The IDs of the node or elements used to define the boundary being meshed. The number of elements to create between the associated nodes. edgeNum[0] applies to the space between entID[0] and entID[1]. edgeNum[entCount-1] applies to the space between entID[entCount1] and entID[0]; that is, the last segment closing the boundary. Specify edgeNum[i] = 0 to use edgeSize[i] to determine the number of elements. This option is not used if useNodes=False. The bias value to use with the elements being generated between successive nodes. Only used if edgeNum[i] is not zero, and useNodes is True. Use of indexes is the same as for edgeNum. Similar to edgeNum and edgeBias; this is the element size to use for each segment. The distance between nodes is simply divided by this value to find the number of elements in the segment. Usage is the same as edgeNum. Only used if edgeNum[i] = 0. Specifies the ID of the property to use for elements as they are created. The propID property must be compatible with surface meshing. Set propID=0 to mesh with whatever property and element type are currently active. Set propID=-1 to automatically mesh with plot-only elements, which do not require other property information. The minimum number of elements between boundaries during mesh generation. Not used for fast-tri mesher. The maximum allowable element aspect ratio. Not used for fast-tri mesher. Boundaries/surfaces with more than this number of nodes on the boundary are quick-cut. Not used for fast-tri mesher.
INT4 edgeNum[0..entCount-1]
INT4 edgeBias[0..entCount-1]
REAL8 edgeSize[0..entCount1]
INT4 propID
feMeshTransition
API-435
feMeshTransition
( useNodes, entCount, entID, edgeNum, edgeBias, edgeSize, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, smoothLaplacian, smoothIter, smoothTol ) INT4 meshApproach REAL8 quadAngle BOOL smoothLaplacian INT4 smoothIter INT4 smoothTol Output: None Return Code: FE_FAIL Remarks/Usage: None Example: Could not mesh. Boundary may not be valid - it may be self intersecting. The mesher to use when meshing the surfaces: 0=Triangle, 1=Quad, 2=Fast-Triangle. The maximum angular deviation from 90 degrees allowed in a quad before it is split into triangles. Only applies to quad mesher. If True, Laplacian smoothing is performed. If False, centroidal smoothing is used. The number of smoothing iterations to perform. Set to 0 to skip smoothing. The smoothing tolerance. Smoothing will stop if node movement during a smoothing pass falls below this tolerance.
API-436
feMeshTransition
feMeshTransition
( useNodes, entCount, entID, edgeNum, edgeBias, edgeSize, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, smoothLaplacian, smoothIter, smoothTol ) The following example meshes the region bounded by nodes 1 through 7. Between each node, five new elements are created. The fast triangle mesher is being used. The software performs 17 Laplacian smoothing passes, or continues until the smoothing converges to a 0.001 tolerance. Sub Main Dim App As femap.model Set App = GetObject(, "femap.model") Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim nodeCOUNT As Long nodes(20) As Long edgeNUM(20) As Long edgeBIAS(20) As Double edgeSIZE(20) As Double vnodes As Variant vedgeNUM As Variant vedgeSIZE As Variant vedgeBiAS As Variant i As Long rc As Long
For i = 0 To 6 nodes(i) = i + 1 edgeNUM(i) = 5 edgeBIAS(i) = 1# edgeSIZE(i) = 0# Next i vnodes = nodes vedgeNUM = edgeNUM vedgeSIZE = edgeSIZE vedgeBiAS = edgeBIAS rc = App.feMeshTransition(True, 7, vnodes, vedgeNUM, _ vedgeBiAS, vedgeSIZE, -1, 2, 2#, 30, 2, 60, True, _ 10, 0.001) App.feViewRegenerate(0) End Sub
feMeshRemesh
API-437
3.9.3.6 feMeshRemesh
feMeshRemesh
( elemSET, nodeSET, remeshMode, refineRatio, breakAngle, deleteOrig, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, smoothLaplacian, smoothIter, smoothTol ) Description: Remeshes a portion of an existing mesh. Input: The ID of a set that contains the IDs of the elements to be remeshed. Alternatively, if you specify a negative value, this is simply the ID of the single element to remesh. The elements contained in this set can be either surface (planar) elements or line elements. If you select line elements, then the only other option that is used is refineRatio. The ID of a set that contains the node IDs where the refinement will be applied. Not used if you set remeshMode=1. The remeshing mode: 0=Refine, 1=Remesh, 2=Unrefine. The ratio between the number of elements along each edge currently and the number after remeshing. This only applies to edges selected by the nodes in nodeSET. For example, if remeshMode=0, refine, and refineRatio=3, then three elements will be generated along each refined edge. If remeshMode=2, unrefine, and refineRatio=2, then half the elements along the refined edge will be removed. The break angle along the refinement edges. If two adjacent edges intersect at an angle greater than this value, then they will not be removed, no matter what the refineRatio value is. This helps to preserve corners in the mesh. Only used when remeshMode=2, unrefine. If True, the original nodes and elements that are being remeshed (those elements selected in elemSET and their nodes) will be deleted. Specifies the ID of the property to use for elements as they are created. Set propID=0 to mesh with whatever property and element type are currently active. Set propID=-1 to automatically mesh with plot-only elements, which do not require other property information. The minimum number of elements between boundaries during mesh generation. Not used for fast-tri mesher. The maximum allowable element aspect ratio. Not used for fast-tri mesher. Boundaries/surfaces with more than this number of nodes on the boundary are quick-cut. Not used for fast-tri mesher.
INT4 elemSET
INT4 refineRatio
REAL8 breakAngle
BOOL deleteOrig
INT4 propID
API-438
feMeshRemesh
feMeshRemesh
( elemSET, nodeSET, remeshMode, refineRatio, breakAngle, deleteOrig, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, smoothLaplacian, smoothIter, smoothTol ) INT4 meshApproach REAL8 quadAngle BOOL smoothLaplacian INT4 smoothIter INT4 smoothTol Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not mesh. Boundary may not be valid - it may be self intersecting. The mesher to use when meshing the surfaces: 0=Triangle, 1=Quad, 2=Fast-Triangle. The maximum angular deviation from 90 degrees allowed in a quad before it is split into triangles. Only applies to quad mesher. If True, Laplacian smoothing is performed. If False, centroidal smoothing is used. The number of smoothing iterations to perform. Set to 0 to skip smoothing. The smoothing tolerance. Smoothing will stop if node movement during a smoothing pass falls below this tolerance.
feMeshConvertFacets
API-439
3.9.3.7 feMeshConvertFacets
feMeshConvertFacets
( solidID ) Description: Converts the current graphical facets of a solid into nodes and plot-only elements. Input: INT4 solidID Output: None Return Code: None Remarks/Usage: The current facetting of the solid is used to generate the elements. You can update the facetting tolerance prior to using this method if you want more (or fewer) elements. Example: None The ID of the solid to use to create the nodes and elements.
API-440
feMeshCleanupSlivers
3.9.3.8 feMeshCleanupSlivers
feMeshCleanupSlivers
( elemSET, minAngle, minLength ) Description: Automatically removes slivers from a selected set of elements. Input: The ID of a set that contains the IDs of the elements to be checked. Alternatively, if you specify a negative value, this is simply the ID of the single element to check. The elements contained in this set must be surface (planar) elements. Identifies slivers to be removed based on a minimum angle. Set to 0.0 to skip angle checking Identifies slivers to be removed based on a minimum edge length. Set to 0.0 to skip length checking.
INT4 elemSET
REAL8 minAngle REAL8 minLength Output: None Return Code: FE_FAIL Remarks/Usage:
You must not include missing elements in the elemSET. Example: None
feMeshEdgeRemoval
API-441
3.9.3.9 feMeshEdgeRemoval
feMeshEdgeRemoval
( elemSET, nd1, nd2 ) Description: Removes an edge from a surface mesh by collapsing the connected elements. Input: INT4 elemSET INT4 nd1 INT4 nd2 Output: None Return Code: FE_FAIL Remarks/Usage: The elements selected must form a single, manifold hull - there can only be two elements that share each edge. Example: None Unable to remove edge. The ID of a set that contains the IDs of the elements to be checked. The elements contained in this set must be surface (planar) elements. The ID of the first node along the element edge. The ID of the second node along the element edge.
API-442
feMeshBuildRemeshRegions
3.9.3.10 feMeshBuildRemeshRegions
feMeshBuildRemeshRegions
( elemSET, breakAngle ) Description: Builds remeshing regions from a set of planar elements. Input: INT4 elemSET REAL8 breakAngle Output: None Return Code: FE_FAIL Remarks/Usage: The elements selected must form a single, manifold hull - there can only be two elements that share each edge. Any quadrilateral elements selected will be converted to triangles. Example: None Unable to build regions. The ID of a set that contains the IDs of the elements to be checked. The elements contained in this set must be surface (planar) elements. The maximum angle between adjacent elements for those elements to be considered in the same region.
feMeshEditRemeshRegions
API-443
3.9.3.11 feMeshEditRemeshRegions
feMeshEditRemeshRegions
( el1, el2 ) Description: Moves an element from one remeshing region to an adjacent region. Input: INT4 el1 INT4 el2 Output: None Return Code: FE_FAIL Remarks/Usage: The element to be moved, el1, must be adjacent, on at least one edge to the region containing element el2. Example: None Unable to update regions. The ID of the element to be moved to the other region. The ID of the element used to identify the region where the first element will be placed.
API-444
feMeshRemeshRegions
3.9.3.12 feMeshRemeshRegions
feMeshRemeshRegions
( meshSize, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, smoothLaplacian, smoothIter, smoothTol ) Description: Moves an element from one remeshing region to an adjacent region. Input: REAL8 meshSize The default mesh size, used to determine the size of elements that will be generated. Specifies the ID of the property to use for elements as they are created. Set propID=0 to mesh with whatever property and element type are currently active. Set propID=-1 to automatically mesh with plotonly elements, which do not require other property information. The minimum number of elements between boundaries during mesh generation. Not used for fast-tri mesher. The maximum allowable element aspect ratio. Not used for fast-tri mesher. Boundaries/surfaces with more than this number of nodes on the boundary are quick-cut. Not used for fast-tri mesher. The mesher to use when meshing the surfaces (0=Triangle, 1=Quad, 2=Fast-Triangle). The maximum angular deviation from 90 degrees allowed in a quad before it is split into triangles. Only applies to quad mesher. If True, Laplacian smoothing is performed. If False, centroidal smoothing is used. The number of smoothing iterations to perform. Set to 0 to skip smoothing. The smoothing tolerance. Smoothing will stop if node movement during a smoothing pass falls below this tolerance.
INT4 propID
INT4 minBetween REAL8 maxAspect INT4 maxQuickNodes INT4 meshApproach REAL8 quadAngle BOOL smoothLaplacian INT4 smoothIter INT4 smoothTol Output: None Return Code: FE_FAIL Remarks/Usage: None
Unable to remesh
feMeshRemeshRegions
API-445
feMeshRemeshRegions
( meshSize, propID, minBetween, maxAspect, maxQuickNodes, meshApproach, quadAngle, smoothLaplacian, smoothIter, smoothTol ) Example: None
API-446
feMeshEdgeMembers
3.9.3.13 feMeshEdgeMembers
feMeshEdgeMembers
( elemSET, nodeSET, propID, orient ) Description: Generates elements along the free edges or free faces of selected elements. Input: INT4 elemSET The ID of a set that contains the IDs of the elements to be checked. The elements contained in this set must be surface (planar) elements or solid elements. The ID of a set that contains the IDs of the nodes which define the portions of the free edge/free face where you want to define edge members. An edge member is created for every edge/face that has at least one node in this set. The ID of an existing property used to define the edge member elements. If planar elements are selected in the elemSET, then this must be the ID of a line element property. If solid elements are selected in elemSET, then this must be a planar element property. The element orientation vector for edge members. This is only used if elemSET contains planar elements, and propID specifies a line element type that requires orientation.
INT4 nodeSET
INT4 propID
Unable to create edge members. Either you selected elements that did not exist, or they are of the wrong type.
Only planar or solid elements can be selected in elemSET, not both at the same time. Example: None
feMeshSmooth
API-447
3.9.3.14 feMeshSmooth
feMeshSmooth
( elemSET, laplaceSmooth, iter, tolerance ) Description: Smooths a selected set of elements. Input: INT4 elemSET The ID of a set that contains the IDs of the elements to be smoothed. The elements contained in this set must be surface (planar) elements or solid elements. If True, Laplacian smoothing is performed; otherwise, centroidal smoothing is used. The maximum number of smoothing passes that will be performed. Smoothing will terminate sooner if the tolerance is reached. The nodal movement tolerance. If no nodes move farther than this distance during a smoothing pass, smoothing will be terminated.
BOOL laplaceSmooth INT4 iter REAL8 tolerance Output: None Return Code: FE_FAIL Remarks/Usage:
Unable to smooth. Your elemSET may contain multiple element types, or element types that are not compatible with this operation.
Only planar or solid elements can be selected in elemSET, not both at the same time. Example: None
API-448
feMeshExtrudeElem
3.9.3.15 feMeshExtrudeElem
feMeshExtrudeElem
( elemSET, axisLen, axisVec, propID, numElem, method, matchCurrent, deleteOrig ) Description: Extrudes existing elements into new elements. Input: The ID of a set that contains the IDs of the elements to be extruded. The elements contained in this set must be either line or surface (planar) elements, but not both. Line elements are extruded into planar elements; planar elements are extruded into solid elements. The extrusion length (See Remarks). The extrusion direction vector (See Remarks). The ID of the property that will be used for the new elements. This property must be of the correct type (planar or solid), depending on the type of elements selected in elemSET. The number of elements generated by each original element along the extrusion direction. The method of determining the extrusion direction. 0=Along axisVec, 1=along the element normal, 2=along the element normal with thickness corrections. If True, the attributes of the elements that are created will match the active settings. If False, they will match the generating elements. If True, the elements in elemSET will be deleted, leaving only the new elements.
INT4 elemSET
INT4 numElem
INT4 method
BOOL matchCurrent BOOL deleteOrig Output: None Return Code: FE_FAIL Remarks/Usage:
Unable to extrude. Check the extrusion direction, and the element and property types.
The extrusion length (with method=0) is really the length of the axisVec multiplied by axisLen. Normally you will either want to specify axisLen=1.0, and set the axisVec to the true extrusion vector, or specify axisVec as a unit vector with the proper components, and set axisLen to the true extrusion length.
feMeshExtrudeElem
API-449
feMeshExtrudeElem
( elemSET, axisLen, axisVec, propID, numElem, method, matchCurrent, deleteOrig ) Example: None
API-450
feMeshExtrudeCurve
3.9.3.16 feMeshExtrudeCurve
feMeshExtrudeCurve
( curveSET, axisLen, axisVec, propID, numElem ) Description: Extrudes existing curves into new elements. Input: INT4 curveSET REAL8 axisLen REAL8 axisVec[0..2] INT4 propID INT4 numElem Output: None Return Code: FE_FAIL Remarks/Usage: The extrusion length is really the length of the axisVec multiplied by axisLen. Normally you will either want to specify axisLen=1.0, and set the axisVec to the true extrusion vector, or specify axisVec as a unit vector with the proper components, and set axisLen to the true extrusion length. Example: None Unable to extrude. Check the extrusion direction, and the element and property types. The ID of a set that contains the IDs of the curves to be extruded. The curves are extruded into planar elements. The number and spacing of elements is dependent on the mesh size established on the curves. The extrusion length (See Remarks). The extrusion direction vector (See Remarks). The ID of the property that will be used for the new elements. This property must be a planar type. The number of elements generated along the extrusion direction.
feMeshRevolveElem
API-451
3.9.3.17 feMeshRevolveElem
feMeshRevolveElem
( elemSET, rotAngle, rotThrust, axisOrig, axisVec, propID, numElem, matchCurrent, deleteOrig ) Description: Revolves existing elements into new elements. Input: The ID of a set that contains the IDs of the elements to be revolved. The elements contained in this set must be either line or surface (planar) elements, but not both. Line elements are revolved into planar elements; planar elements are revolved into solid elements. The angle of rotation, in degrees. The total thrust distance (along the axis of rotation), typically zero. The origin of the axis of revolution. The direction of the axis of revolution. The ID of the property that will be used for the new elements. This property must be of the correct type (planar or solid), depending on the type of elements selected in elemSET. The number of elements generated by each original element along the revolution direction. If True, the attributes of the elements that are created will match the active settings. If False, they will match the generating elements. If True, the elements in elemSET will be deleted, leaving only the new elements.
INT4 elemSET
REAL8 rotAngle REAL8 rotThrust REAL8 axisOrig[0..2] REAL8 axisVec[0..2] INT4 propID
INT4 numElem BOOL matchCurrent BOOL deleteOrig Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
Unable to revolve. Check the axis of revolution, and the element and property types.
API-452
feMeshRevolveCurve
3.9.3.18 feMeshRevolveCurve
feMeshRevolveCurve
( curveSET, rotAngle, rotThrust, axisOrig, axisVec, propID, numElem ) Description: Revolves existing curves into new elements. Input: INT4 curveSET REAL8 rotAngle REAL8 rotThrust REAL8 axisOrig[0..2] REAL8 axisVec[0..2] INT4 propID The ID of a set that contains the IDs of the curves to be revolved. The curves are revolved into planar elements. The number and spacing of elements is dependent on the mesh size established on the curves. The angle of rotation, in degrees. The total thrust distance (along the axis of rotation), typically zero. The origin of the axis of revolution. The direction of the axis of revolution. The ID of the property that will be used for the new elements. This property must be of the correct type (planar or solid), depending on the type of elements selected in elemSET. The number of elements generated by each original element along the revolution direction.
INT4 numElem Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
Unable to revolve. Check the axis of revolution, and the element and property types.
feMeshSweepElem
API-453
3.9.3.19 feMeshSweepElem
feMeshSweepElem
( elemSET, numPath, curvePath, numAlign, curveAlign, alignLoc, propID ) Description: Sweeps existing elements along one or more curves into new elements. Input: INT4 elemSET INT4 numPath INT4 curvePath[0..numPath-1] The ID of a set that contains the IDs of the elements to be swept. The curves are swept into planar elements. The number and spacing of elements is dependent on the mesh size established on the curves. The number of curves in the curvePath array. The IDs of the curves along the sweep path. These IDs should be specified in order, starting at the beginning of the path to sweep along. The number of curves in the curveAlign array (usually 0, unless you are using an alignment path to orient the elements along sweep path). The IDs of curves along the alignment path. The alignment position. Only used if the sweep path is nonplanar, and numPath=0 (not using an alignment path). The ID of the property that will be used for the new elements. This property must be a planar type.
INT4 numAlign INT4 curveAlign[0..numAlign1] REAL8 alignLoc[0..2] INT4 propID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
Unable to sweep. Check the order of the curves for the path and alignment, and the element and property types.
API-454
feMeshSweepCurve
3.9.3.20 feMeshSweepCurve
feMeshSweepCurve
( curveSET, numPath, curvePath, numAlign, curveAlign, alignLoc, propID ) Description: Sweeps curves along one or more curves into new elements. Input: The ID of a set that contains the IDs of the curves to be swept. The elements contained in this set must be either line or surface (planar) elements, but not both. Line elements are swept into planar elements; planar elements are swept into solid elements. The number of curves in the curvePath array. The IDs of the curves along the sweep path. These IDs should be specified in order, starting at the beginning of the path to sweep along. The number of curves in the curveAlign array (usually 0, unless you are using an alignment path to orient the elements along sweep path). The IDs of curves along the alignment path. The alignment position. Only used if the sweep path is nonplanar, and numPath=0 (not using an alignment path). The ID of the property that will be used for the new elements. This property must be of the correct type (planar or solid) depending on the type of elements selected in elemSET. If True, the attributes of the elements that are created will match the active settings. If False, they will match the generating elements. If True, the elements in elemSET will be deleted, leaving only the new elements.
INT4 elemSET
INT4 propID
BOOL matchCurrent BOOL deleteOrig Output: None Return Code: FE_FAIL Remarks/Usage: None
Unable to sweep. Check the order of the curves for the path and alignment, and the element and property types.
feMeshSweepCurve
API-455
feMeshSweepCurve
( curveSET, numPath, curvePath, numAlign, curveAlign, alignLoc, propID ) Example: None
API-456
3.10 Modification Methods
Modification Methods include:
Section 3.10.1, "Projection" Section 3.10.2, "Move, Rotate and Scale" Section 3.10.3, "Color and Layer" Section 3.10.4, "Renumbering" Section 3.10.5, "Associativity" Section 3.10.6, "Other Updates" Section 3.10.7, "Element Updates"
feProjectOntoCurve
API-457
3.10.1 Projection
3.10.1.1 feProjectOntoCurve
feProjectOntoCurve
( entityTYPE, entitySET, curveID ) Description: Projects nodes or points onto a curve. Input: INT4 entityTYPE The type of entities to be projected. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT or FT_NODE. The ID of a set that contains a list of point or node IDs that will be projected. Alternatively, if you specify a negative value, this is simply the ID of the single entity to project. The ID of the curve to project onto.
INT4 entitySET INT4 curveID Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage:
EntityTYPE does not specify either points or nodes. Could not project.
Points/nodes are projected to the closest location on the curve, not along any specified vector. Example: None
API-458
feProjectOntoSurface
3.10.1.2 feProjectOntoSurface
feProjectOntoSurface
( entityTYPE, entitySET, surfaceID ) Description: Projects nodes or points onto a surface. Input: INT4 entityTYPE The type of entities to be projected. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT or FT_NODE. The ID of a set that contains a list of point or node IDs that will be projected. Alternatively, if you specify a negative value, this is simply the ID of the single entity to project. The ID of the surface to project onto.
INT4 entitySET INT4 surfaceID Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage:
EntityTYPE does not specify either points or nodes. Could not project.
Points/nodes are projected to the closest location on the surface, not along any specified vector. Example: None
feProjectOntoVector
API-459
3.10.1.3 feProjectOntoVector
feProjectOntoVector
( entityTYPE, entitySET, vecLoc, vecDir ) Description: Projects points or nodes onto a vector Input: INT4 entityTYPE The type of entities to be projected. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT or FT_NODE. The ID of a set that contains a list of point or node IDs that will be projected. Alternatively, if you specify a negative value, this is simply the ID of the single entity to project. The XYZ location of the base of the vector to project onto. Must be specified in Global Rectangular coordinates. The XYZ components of the vector to project onto. Must be specified in Global Rectangular coordinates.
INT4 entitySET
REAL8 vecLoc[0..2] REAL8 vecDir[0..2] Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: None Example: None
API-460
feProjectAlongVector
3.10.1.4 feProjectAlongVector
feProjectAlongVector
( entityTYPE, entitySET, surfaceSET, vecAlong ) Description: Projects points or nodes along a vector onto selected surfaces Input: INT4 entityTYPE The type of entities to be projected. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT or FT_NODE. The ID of a set that contains a list of point or node IDs that will be projected. Alternatively, if you specify a negative value, this is simply the ID of the single entity to project. The ID of a set that contains a list of surface IDs that the entities will be projected onto. Alternatively, if you specify a negative value, this is the ID of the single surface to project onto. The XYZ components of the vector to project along. Must be specified in Global Rectangular coordinates.
INT4 entitySET
INT4 surfaceSET
REAL8 vecAlong[0..2] Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: None Example: None
feProjectOntoPlane
API-461
3.10.1.5 feProjectOntoPlane
feProjectOntoPlane
( entityTYPE, entitySET, planeLoc, planeNormal ) Description: Projects points or nodes onto a plane Input: INT4 entityTYPE The type of entities to be projected. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT or FT_NODE. The ID of a set that contains a list of point or node IDs that will be projected. Alternatively, if you specify a negative value, this is simply the ID of the single entity to project. The XYZ location of the base of the plane to project onto. Must be specified in Global Rectangular coordinates. The XYZ components of the plane normal to project onto. Must be specified in Global Rectangular coordinates.
INT4 entitySET
REAL8 planeLoc[0..2] REAL8 planeNormal[0..2] Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: None Example: None
API-462
feProjectOntoSolid
3.10.1.6 feProjectOntoSolid
feProjectOntoSolid
( nodeSET, elemSET, solidID, surfCount, surfID ) Description: Projects a mesh onto a solid. Input: INT4 nodeSET The ID of a set that contains a list of node IDs that will be projected. Alternatively, if you specify a negative value, this is simply the ID of the single entity to project. The ID of a set that contains a list of element IDs that reference the nodes to be projected. Alternatively, if you specify a negative value, this is simply the ID of the single entity to project. These elements are used during the smoothing process as the nodes are projected. The ID of the solid to project onto. Must be 0 if you are going to specify surfaces. The number of surfaces specified in surfID - only used if solidID=0. The IDs of the surfaces to project onto - only used if solidID=0 and surfCount is not 0.
INT4 elemSET
INT4 solidID INT4 surfCount INT4 surfID[0..surfCount-1] Output: None Return Code: FE_FAIL Remarks/Usage:
A mesh can either be projected to a solid by specifying solidID, or to surfaces by specifying surfCount and surfID. Example: None
feMoveTo
API-463
feMoveTo
( entityTYPE, entitySET, x, y, z, doX, doY, doZ, inCsys, moveRef ) Description: Moves nodes, points, or coordinate systems to a new location. Input: INT4 entityTYPE The type of entities to be moved. For entity information, see Section 3.3.6, "Entity Types". Can be FT_CSYS, FT_POINT or FT_NODE. The ID of a set that contains a list of coordinate system, point, or node IDs that will be moved. Alternatively, if you specify a negative value, this is simply the ID of the single entity to move. The coordinates that you want to move to. Specified in the inCsys coordinate system.
INT4 entitySET REAL8 x REAL8 y REAL8 z BOOL doX BOOL doY BOOL doZ INT4 inCsys BOOL moveRef Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage:
If True, the corresponding coordinate direction (in inCsys) will be updated to the specified value. Only directions specified as True will be moved. The ID of the coordinate system where the update will take place. Only used if entityTYPE=FT_CSYS. If True, then all entities that reference the coordinate systems being moved will also be updated as a rigid body.
EntityTYPE does not specify coordinate systems, points, or nodes. Could not move.
API-464
feMoveBy
3.10.2.2 feMoveBy
feMoveBy
( entityTYPE, entitySET, radial, length, vecLoc ) Description: Moves nodes, points, or coordinate systems to a new location. Input: The type of entities to be moved. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT, FT_CURVE, FT_CSYS, FT_SURFACE, FT_VOLUME, FT_SOLID, FT_NODE, or FT_ELEM. The ID of a set that contains a list of entity IDs that will be moved. Alternatively, if you specify a negative value, this is simply the ID of the single entity to move. If True, entities will be moved radially from a central location. If False, they will be moved along a vector. Only nodes and elements can be moved radially. The distance to move. If radial = False, this length is multiplied by the length of the vector to get the total distance. If radial=False, contains the components of the vector to move along, specified in global rectangular coordinates. If radial=True, specifies the coordinates of the center that you are moving around, also specified in global rectangular coordinates.
INT4 entityTYPE
INT4 entitySET
BOOL radial
REAL8 length
REAL8 vecLoc[0..2]
Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: You cannot move the global coordinate systems. Example: None Invalid entity type. Must specify one of the types listed in entityTYPE. Can only specify nodes or elements if radial=True. Could not move.
feMoveOffset
API-465
3.10.2.3 feMoveOffset
feMoveOffset
( elemSET, method, length, alongVec ) Description: Moves elements by offsetting them from their current location (normally used with planar elements). Input: INT4 elemSET The ID of a set that contains a list of element IDs that will be offset. Alternatively, if you specify a negative value, this is simply the ID of the single entity to offset. The method of determining the offset direction: 0=Along alongVec, 1=along the element normal, 2=along the element normal with thickness corrections. The distance to offset. If method=0, this length is multiplied by the length of the vector to get the total distance. Only used if method=0. Contains the components of the vector to move along, specified in global rectangular coordinates.
INT4 method
REAL8 length REAL8 alongVec[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-466
feRotateTo
3.10.2.4 feRotateTo
feRotateTo
( entityTYPE, entitySET, axisLoc, axisVec, fromLoc, toLoc ) Description: Rotates entities around an axis from one location to another. Input: The type of entities to be moved. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT, FT_CURVE, FT_CSYS, FT_SURFACE, FT_VOLUME, FT_SOLID, FT_NODE, or FT_ELEM. The ID of a set that contains a list of entity IDs that will be rotated. Alternatively, if you specify a negative value, this is simply the ID of the single entity to rotate. The coordinates of the origin of the axis of rotation, in global rectangular coordinates. The components of the axis of rotation, in global rectangular coordinates. The coordinates of a point that you will rotate from, in global rectangular coordinates. The coordinates of a point that you will rotate to, in global rectangular coordinates.
INT4 entityTYPE
INT4 entitySET
REAL8 axisLoc[0..2] REAL8 axisVec[0..2] REAL8 fromLoc[0..2] REAL8 toLoc[0..2] Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage:
EntityTYPE does not specify a valid type. Could not rotate. Check to make sure that the locations and vectors that you defined are not colinear or otherwise invalid.
The axis of rotation is combined with the fromLoc and toLoc to compute an angle of rotation, which is then applied around the axis of rotation to every entity that you select. Example: None
feRotateBy
API-467
3.10.2.5 feRotateBy
feRotateBy
( entityTYPE, entitySET, axisLoc, axisVec, rotAngle, rotThrust ) Description: Rotates entities around an axis through a specified angle. Input: The type of entities to be moved. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT, FT_CURVE, FT_CSYS, FT_SURFACE, FT_VOLUME, FT_SOLID, FT_NODE, or FT_ELEM. The ID of a set that contains a list of entity IDs that will be rotated. Alternatively, if you specify a negative value, this is simply the ID of the single entity to rotate. The coordinates of the origin of the axis of rotation, in global rectangular coordinates. The components of the axis of rotation, in global rectangular coordinates. The angle of rotation, in degrees. The total thrust distance (along the axis of rotation), typically zero.
INT4 entityTYPE
INT4 entitySET
REAL8 axisLoc[0..2] REAL8 axisVec[0..2] REAL8 rotAngle REAL8 rotThrust Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
EntityTYPE does not specify a valid type. Could not rotate. Check to make sure that the locations and vectors that you defined are not colinear or otherwise invalid.
API-468
feAlignTo
3.10.2.6 feAlignTo
feAlignTo
( entityTYPE, entitySET, fromLoc, fromVec, toLoc, toVec ) Description: Aligns entities from one vector to another. Input: The type of entities to be aligned. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT, FT_CURVE, FT_CSYS, FT_SURFACE, FT_VOLUME, FT_SOLID, FT_NODE or FT_ELEM. The ID of a set that contains a list of entity IDs that will be aligned. Alternatively, if you specify a negative value, this is simply the ID of the single entity to align. The coordinates of the origin of the original vector, in global rectangular coordinates. The components of the original vector, in global rectangular coordinates. The coordinates of the origin of the destination vector, in global rectangular coordinates. The components of the destination vector, in global rectangular coordinates.
INT4 entityTYPE
INT4 entitySET
REAL8 fromLoc[0..2] REAL8 fromVec[0..2] REAL8 toLoc[0..2] REAL8 toVec[0..2] Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
EntityTYPE does not specify a valid type. Could not align. Check to make sure that the locations and vectors that you defined are not colinear or otherwise invalid.
feScale
API-469
3.10.2.7 feScale
feScale
( entityTYPE, entitySET, fromLoc, csysID, xScale, yScale, zScale ) Description: Scales entities around an origin. Input: The type of entities to be scaled. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT, FT_CURVE, FT_SURFACE, FT_VOLUME, FT_SOLID, FT_NODE, or FT_ELEM. The ID of a set that contains a list of entity IDs that will be scaled. Alternatively, if you specify a negative value, this is simply the ID of the single entity to scale. The coordinates of the origin around which the entities will be scaled, in global rectangular coordinates. The ID of the coordinate system in which scaling will take place. The scale factors in the axis directions of coordinate system csysID.
INT4 entityTYPE
INT4 entitySET
REAL8 fromLoc[0..2] INT4 csysID REAL8 xScale REAL8 yScale REAL8 zScale Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
API-470
feModifyColor
feModifyColor
( entityTYPE, entitySET, color, randomize ) Description: Modifies the color of selected entities. Input: The type of entities to be modified. For entity information, see Section 3.3.6, "Entity Types". Can be FT_CSYS, FT_POINT, FT_CURVE, FT_SURFACE, FT_VOLUME, FT_TEXT, FT_NODE, FT_ELEM, FT_MATL, FT_PROP, or FT_CONTACT. The ID of a set that contains a list of entity IDs that will be modified. Alternatively, if you specify a negative value, this is simply the ID of the single entity to modify. The new color that you want to assign to the selected entities. Only valid for FT_PROP, FT_MATL, and FT_SURFACE. If True, then colors are randomized for the selected entities. The specified color is simply used as initialization for the randomization process.
INT4 entityTYPE
INT4 entitySET INT4 color BOOL randomize Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
feModifyTransparency
API-471
3.10.3.2 feModifyTransparency
feModifyTransparency
( entityTYPE, entitySET, transparency ) Description: Modifies the transparency of selected entities. Input: INT4 entityTYPE The type of entities to be modified. For entity information, see Section 3.3.6, "Entity Types". Can be FT_SURFACE, FT_ELEM, FT_PROP, or FT_MATL The ID of a set that contains a list of entity IDs that will be modified. Alternatively, if you specify a negative value, this is simply the ID of the single entity to modify. The transparency value to assign. Must be between 0 (opaque) and 100 (fully transparent).
INT4 entitySET
REAL8 transparency Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
API-472
feModifyLayer
3.10.3.3 feModifyLayer
feModifyLayer
( entityTYPE, entitySET, layer ) Description: Modifies the layer of selected entities. Input: The type of entities to be modified. For entity information, see Section 3.3.6, "Entity Types". Can be FT_CSYS, FT_POINT, FT_CURVE, FT_SURFACE, FT_VOLUME, FT_SOLID, FT_TEXT, FT_NODE, FT_ELEM, FT_MATL, FT_PROP, or FT_CONTACT. The ID of a set that contains a list of entity IDs that will be modified. Alternatively, if you specify a negative value, this is simply the ID of the single entity to modify. The new layer that you want to assign to the selected entities.
INT4 entityTYPE
INT4 entitySET INT4 color Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
feRenumber
API-473
3.10.4 Renumbering
3.10.4.1 feRenumber
feRenumber
( entityTYPE, entitySET, startID ) Description: Renumbers the IDs of selected entities. Input: The type of entities to be modified. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT, FT_CURVE, FT_SURFACE, FT_VOLUME, FT_SOLID, FT_CSYS, FT_NODE, FT_ELEM, FT_MATL, FT_PROP, FT_LAYUP, FT_OUT_CASE, FT_GROUP, FT_LOAD_DIR, FT_BC_DIR, FT_AMGR_DIR, FT_LAYER, FT_CONNECTION_PROP, FT_CONTACT, FT_CONNECTION, and FT_FUNCTION_DIR. The ID of a set that contains a list of entity IDs that will be modified. Alternatively, if you specify a negative value, this is simply the ID of the single entity to modify. The new ID of the first entity to be renumbered. All other entities will be renumbered to available IDs that are higher than this number.
INT4 entityTYPE
INT4 entitySET
API-474
feRenumberOpt
3.10.4.2 feRenumberOpt
feRenumberOpt
( entityTYPE, entitySET, startID, renumMethod, renumCSysID, renumAbs, renumDescend, renumConstOff ) Description: Renumbers the IDs of selected entities. Input: The type of entities to be modified. For entity information, see Section 3.3.6, "Entity Types". Can be FT_POINT, FT_CURVE, FT_SURFACE, FT_VOLUME, FT_SOLID, FT_CSYS, FT_NODE, FT_ELEM, FT_MATL, FT_PROP, FT_LAYUP, FT_OUT_CASE, FT_GROUP, FT_LOAD_DIR, FT_BC_DIR, FT_AMGR_DIR, FT_LAYER, FT_CONNECTION_PROP, FT_CONTACT, FT_CONNECTION, and FT_FUNCTION_DIR. The ID of a set that contains a list of entity IDs that will be modified. Alternatively, if you specify a negative value, this is simply the ID of the single entity to modify. The new ID of the first entity to be renumbered. All other entities will be renumbered to available IDs that are higher than this number. The method used for sorting the entities to be renumbered. 0=ID, 1=Not Available, 2=Color, 3=Layer, 4=X Coord, 5=Y Coord, 6=Z Coord, 7=Reference Entity ID (Material ID if renumbering properties, Property ID if renumbering Elements), 8=Entity Type, 9=Minimum Node ID The coordinate system ID in which coordinate renumbering is done. This is only used for the entityTYPEs where X,Y,Z sorting is available, and when renumMethod is set to one of those options If True, the absolute value of coordinate values are used when sorting by coordinates If True, the sort is done in Descending order, otherwise in Ascending order If True, all entities are renumbered with a constant ID offset
INT4 entityTYPE
INT4 entitySET
INT4 startID
INT4 renumMethod
INT4 renumCSysID
BOOL renumAbs BOOL renumDescend BOOL renumConstOff Output: None Return Code: FE_INVALID FE_FAIL
feRenumberOpt
API-475
feRenumberOpt
( entityTYPE, entitySET, startID, renumMethod, renumCSysID, renumAbs, renumDescend, renumConstOff ) Remarks/Usage: This works just like feRenumber, but allows you to specify additional renumbering options. Use feRenumber for a simpler interface if you are simply renumbering by ID. Not all combinations of renumMethod and entityTYPE are available - only those combinations available in the interactive renumbering commands will work properly. Example: None
API-476
feAutoMeshAssociativity
3.10.5 Associativity
3.10.5.1 feAutoMeshAssociativity
feAutoMeshAssociativity
( elemSetID, solidSetID, dTolerance, bClearPrevious, bCheckContainment, bAttachMidside, bGroupExtra, bMessages, nUnattachedGroup ) Description: Automatically associates both nodes and elements with geometry that is coincident in your model Input: The ID of a set that contains a list of element IDs that will be attached. Alternatively, if you specify a negative value, this is simply the ID of the single entity to attach. Nodes are automatically determined for attachment based on the selected elements. The ID of a set that contains a list of solid IDs to which the mesh will be attached. The tolerance value. Nodes must be within this tolerance distance of the geometry that they will be associated too. If True, removes and previous atttachments from the nodes/elements prior to completing this command. If True and you are associating to multiple solids this will first find the solid that you an element is in by checking the containment of the location of its centroid. If True, midside nodes will be associated as well as corner nodes., Otherwise only corners will be associated. If True, status and warning messages will be written during the processing
INT4 elemSetID
BOOL bCheckContainment
BOOL bAttachMidside BOOL bMessages Output: INT4 nUnattachedGroup Return Code: None Remarks/Usage: None Example: None
The ID of a group that will receive any geometry that could not be attached fully
feMeshAttach
API-477
3.10.5.2 feMeshAttach
feMeshAttach
( entityTYPE, entitySET, attachTYPE, attachID, doNodes ) Description: Associates nodes or elements with specified geometry. Input: INT4 entityTYPE The type of entities to be attached. For entity information, see Section 3.3.6, "Entity Types". Can be FT_NODE or FT_ELEM. The ID of a set that contains a list of entity IDs that will be attached. Alternatively, if you specify a negative value, this is simply the ID of the single entity to attach. The type of geometry to attach the node/element to. Can be FT_POINT, FT_CURVE, FT_SURFACE, or FT_SOLID. The ID of the geometry to attach to. Only used if entityTYPE=FT_ELEM. In this case, if True, then the nodes on the element will also be associated with the same geometry as the element.
INT4 entitySET
INT4 attachTYPE INT4 attachID BOOL doNodes Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
API-478
feMeshAttachNodes
3.10.5.3 feMeshAttachNodes
feMeshAttachNodes
( nNodes, nodeID, attachTYPE, attachID ) Description: Associates nodes with specified geometry. Input: INT4 nNodes INT4 nodeID[0..nNodes-1] INT4 attachTYPE[0..nNodes-1] INT4 attachID[0..nNodes-1] Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: For each node you want to attach to geometry, there must be corresponding entries in the three arrays. Example: None One or more attachTYPEs do not specify a valid type. Could not attach one or more nodes The number of nodes specified in the other arrays The IDs of the nodes being attached to geometry. The types of geometry to attach the node/element to. Entries can be FT_POINT, FT_CURVE, FT_SURFACE, or FT_SOLID. The IDs of the geometry to attach each node to.
feMeshDetach
API-479
3.10.5.4 feMeshDetach
feMeshDetach
( entityTYPE, entitySET, attachTYPE, attachID, interior ) Description: Removes association between nodes or elements and specified geometry. Input: INT4 entityTYPE The type of entities to be detached. For entity information, see Section 3.3.6, "Entity Types". Can be FT_NODE or FT_ELEM. The ID of a set that contains a list of entity IDs that will be detached. Alternatively, if you specify a negative value, this is simply the ID of the single entity to detach. The type of geometry to attach the node/element to. Can be FT_POINT, FT_CURVE, FT_SURFACE, or FT_SOLID. You can also specify attachTYPE=0, in which case attachID is not used, and the node/element is detached from all geometry. The ID of the geometry to detach. Not used if attachTYPE=0. Only used if entityTYPE=FT_NODE, and attachTYPE=FT_CURVE, FT_SURFACE or FT_SOLID. If True, the node is detached only if it is an interior node.
INT4 entitySET
INT4 attachTYPE
INT4 attachID BOOL interior Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
API-480
feModifyDefCSys
feModifyDefCSys
( entityTYPE, entitySET, csysID ) Description: Updates the definition coordinate system of selected entities. Input: INT4 entityTYPE The type of entities to be updated. For entity information, see Section 3.3.6, "Entity Types". Can be FT_CSYS, FT_POINT, or FT_NODE. The ID of a set that contains a list of entity IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single entity to update. The ID of the coordinate system to use as the definition coordinate system.
INT4 entitySET
INT4 csysID Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
EntityTYPE does not specify a valid type. Could not update. Check to see that coordinate system exists.
feModifyOutCSys
API-481
3.10.6.2 feModifyOutCSys
feModifyOutCSys
( entityTYPE, entitySET, csysID ) Description: Updates the output coordinate system of selected entities. Input: INT4 entityTYPE The type of entities to be updated. For entity information, see Section 3.3.6, "Entity Types". Must be FT_NODE. The ID of a set that contains a list of entity IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single entity to update. The ID of the coordinate system to use as the output coordinate system.
INT4 entitySET
INT4 csysID Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
EntityTYPE does not specify a valid type. Could not update. Check to see that coordinate system exists.
API-482
feModifyPermBC
3.10.6.3 feModifyPermBC
feModifyPermBC
( entitySET, t1, t2, t3, r1, r2, r3 ) Description: Updates the permanent constraints on nodes. Input: INT4 entitySET BOOL t1 BOOL t2 BOOL t3 BOOL r1 BOOL r2 BOOL r3 Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not update. Corresponds to the six degrees of freedom of each node. If True, the associated degree of freedom is constrained. The ID of a set that contains a list of node IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single node to update.
feModifySplineOrder
API-483
3.10.6.4 feModifySplineOrder
feModifySplineOrder
( entitySET, order ) Description: Updates the order of b-spline curves. Input: INT4 entitySET The ID of a set that contains a list of curve IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single curve to update. The new order of the b-spline curve. Must be a value between 3 and 10.
Only used with standard geometry engine b-splines - not solid engine curves. Example: None
API-484
feModifySplineKnots
3.10.6.5 feModifySplineKnots
feModifySplineKnots
( entitySET, knotLoc ) Description: Insert knots into b-spline curves. Input: INT4 entitySET REAL8 knotLoc[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: Only used with standard geometry engine b-splines - not solid engine curves. Example: None Could not update. The ID of a set that contains a list of curve IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single curve to update. The location, in global rectangular coordinates, of the knot to insert.
feModifyReverseCurve
API-485
3.10.6.6 feModifyReverseCurve
feModifyReverseCurve
( entitySET ) Description: Reverses the direction of selected curves. Input: INT4 entitySET Output: None Return Code: FE_FAIL Remarks/Usage: Only used with standard geometry engine curves - not solid engine curves. Example: None Could not update. The ID of a set that contains a list of curve IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single curve to update.
API-486
feModifyNoMergeCurve
3.10.6.7 feModifyNoMergeCurve
feModifyNoMergeCurve
( entitySET, bNoMerge ) Description: Marks selected curves as mergeable or nonmergeable. Input: INT4 entitySET BOOL bNoMerge Output: None Return Code: FE_FAIL Remarks/Usage: Only used with solid engine curves - not standard geometry engine curves. Example: None Could not update. The ID of a set that contains a list of curve IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single curve to update. If True, curves are made nonmergeable. If False, they are mergeable.
feModifySurfaceDivisions
API-487
3.10.6.8 feModifySurfaceDivisions
feModifySurfaceDivisions
( entitySET, sDiv, tDiv, tolerance ) Description: Updates the graphical divisions and facetting used to display surfaces. Input: INT4 entitySET The ID of a set that contains a list of surface IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single surface to update. The number of divisions displayed along the first parametric direction of the surface. The number of divisions displayed along the second parametric direction of the surface. The accuracy with which the graphical facetting of solid geometry engine surfaces is created. Decreasing this number results in more facets and slower draw times, but a closer approximation to the actual geometry. Increasing the number speeds up draw times, but can lead to coarse approximations of the true geometry.
REAL8 tolerance
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not update.
API-488
feModifySolidFacetting
3.10.6.9 feModifySolidFacetting
feModifySolidFacetting
( entitySET, sDiv, tDiv, dAngleTol, dChordTol, dCurveFactor ) Description: Updates the graphical divisions and facetting used to display solids. Input: INT4 entitySET The ID of a set that contains a list of solid IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single solid to update. The number of divisions displayed along the first parametric direction of the surfaces of the solid. The number of divisions displayed along the second parametric direction of the surfaces of the solid. The percent of angle error allowed between the solid and facets The percent of chord error allowed between the solid and facets The refinement factor for curve facets compared to the default solid facetting.
INT4 sDiv INT4 tDiv REAL8 dAngleTol REAL8 dChordTol REAL8 dCurveFactor Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
feModifySuperelementID
API-489
3.10.6.10 feModifySuperelementID
feModifySuperelementID
( entitySET, nSEID ) Description: Updates the superelementID of a set of nodes. Input: INT4 entitySET INT4 nSEID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not update. The ID of a set that contains a list of node IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single node to update. The superelementID to assign to the nodes.
API-490
feModifyLoadPhase
3.10.6.11 feModifyLoadPhase
feModifyLoadPhase
( entityTYPE, entitySET, phase ) Description: Updates the phase of selected loads. Input: The type of entities where the loads to be modified are applied. For entity information, see Section 3.3.6, "Entity Types". Can be FT_NODE, FT_ELEM, FT_POINT, FT_CURVE, or FT_SURFACE. This is the type of entity that is selected in entitySET. The ID of a set that contains a list of entity IDs where the loads are applied. Alternatively, if you specify a negative value, this is simply the ID of the single entity with a load applied. The new phase value.
INT4 entityTYPE
INT4 entitySET REAL8 phase Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage:
Only loads in the active load set will be updated. The selection/specification of entities refers to the entities where the loads are applied - not the loads themselves. Example: None
feModifyElemPropID
API-491
feModifyElemPropID
( entitySET, propID ) Description: Updates the property ID of selected elements. Input: INT4 entitySET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. The ID of the new property to assign to the elements. This property must be compatible with the element types chosen.
INT4 propID Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: None Example: None
EntityTYPE does not specify a valid type. Could not update. Check to see that property exists and is of the correct type.
API-492
feModifyPropMatlID
3.10.7.2 feModifyPropMatlID
feModifyPropMatlID
( entitySET, matlID ) Description: Updates the material ID of selected properties. Input: INT4 entitySET INT4 matlID Output: None Return Code: FE_INVALID FE_FAIL Remarks/Usage: This method only updates the primary material identifier. Laminate properties cannot be updated using this method. Example: None EntityTYPE does not specify a valid type. Could not update. Check to see that material exists. The ID of a set that contains a list of property IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single property to update. The ID of the new material to assign to the properties.
feModifyMaterialAngle
API-493
3.10.7.3 feModifyMaterialAngle
feModifyMaterialAngle
( entitySET, method, vecDir, coordDir, coordCSys, angle ) Description: Updates the material angle of selected entities. Input: INT4 entitySET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. The method for specifying material angles: 0=None/Off, 1=Vector, 2=CoordSys, 3=Angle. The vector to be used for definition of material angles if method=1. Sets the direction (0=X,1=Y,2=Z) in the specified coordinate system to be used for material angles. Only used if method=2. Sets the coordinate system ID to be used if method=2. Sets the angle to be used for the definition of material angles when method=3.
INT4 method REAL8 vecDir[0..2] INT4 coordDir INT4 coordCSys REAL8 angle Output: None Return Code: FE_FAIL Remarks/Usage:
To turn material angles off for the selected elements, simply specify method=0. Example: None
API-494
feModifyElemReverse
3.10.7.4 feModifyElemReverse
feModifyElemReverse
( entitySET, method, vecDir ) Description: Reverses the normal of planar elements, or optionally spins them to orient the first edge along a vector. Input: INT4 entitySET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. The method for updating the elements: 0=Reverse, 1=Normals Outward, 2=Normals Inward, 3=Align to Vector. The vector to be used for aligning the first edge of the elements if method=3.
INT4 method REAL8 vecDir[0..2] Output: None Return Code: FE_FAIL Remarks/Usage:
This method should only be used with planar elements. Example: None
feModifyElemRelease
API-495
3.10.7.5 feModifyElemRelease
feModifyElemRelease
( entitySET, rel1, rel2 ) Description: Updates the releases at the ends at the ends of beam (and other) elements. Input: INT4 entitySET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. The release flags for End 1 of the element. Specify True to release a corresponding elemental degree of freedom. The release flags for End 2 of the element. Specify True to release a corresponding elemental degree of freedom.
BOOL rel1[0..5] BOOL rel2[0..5] Output: None Return Code: FE_FAIL Remarks/Usage:
This method should only be used with beam or bar elements. Example: None
API-496
feModifyElemOrder
3.10.7.6 feModifyElemOrder
feModifyElemOrder
( entitySET, makeParabolic, ontoGeometry, maxAngle ) Description: Updates the order of elements between linear and parabolic. Input: INT4 entitySET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. Set to True to convert elements to parabolic. Set to False to convert to linear elements. Midside nodes will be created when converting to parabolic. If you are converting to parabolic, set to True to project the midside nodes onto any referenced geometry. Set to False to leave the nodes at the midside. If you are projecting midside nodes onto geometry, this is the maximum angle that any edge can be distorted by the movement.
BOOL makeParabolic
BOOL ontoGeometry
This method should only be used with elements that have both linear and parabolic types. Example: None
feModifyMidside
API-497
3.10.7.7 feModifyMidside
feModifyMidside
( elemSET, nodeSET ) Description: Updates the midside nodes of selected elements to be at the middle of the element edge. Input: INT4 elemSET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. The ID of a set that contains a list of node IDs that will not be updated. All midside nodes on the elements in elemSET are normally updated. If you want to skip some nodes, include them in this set. Specify nodeSET=0 if you want to update all midside nodes.
INT4 nodeSET
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not update.
API-498
feModifyFormulation
3.10.7.8 feModifyFormulation
feModifyFormulation
( elemSET, form1, form2 ) Description: Updates the element formulation for selected elements. Input: INT4 elemSET INT4 form1 INT4 form2 Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Could not update. The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. The formulation values.
feModifySplitQuads
API-499
3.10.7.9 feModifySplitQuads
feModifySplitQuads
( elemSET, form1, form2 ) Description: Splits quadrilateral elements into triangular elements. Input: INT4 elemSET Output: None Return Code: FE_FAIL Remarks/Usage: The split direction is automatically chosen to get the best shaped triangles; no further input is required. Example: None Could not update. The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update.
API-500
feModifyOffsets
3.10.7.10 feModifyOffsets
feModifyOffsets
( elemSET, endA, endB, radial, offA, offB ) Description: Modifies the offsets of beam and bar elements. Input: INT4 elemSET BOOL endA BOOL endB BOOL radial The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. If True, the offset at the first end of the element will be updated. If True, the offset at the second end of the element will be updated. If True, the offsets are radial, around a location, instead of being vector based. If radial=True, these are the coordinates of the center location. If radial=False, then these are components of the vector offset at the first end of the element. In either case, the values are specified in global rectangular coordinates. If radial=True, then offB[0] is the radial offset length, and the other offB values are not used. If radial=False, then offB contains the components of the vector offset at the second end of the element.
REAL8 offA[0..2]
This method can only be used with elements that have offsets: beams and bars. Example: None
feModifyOffsetsToRefPt
API-501
3.10.7.11 feModifyOffsetsToRefPt
feModifyOffsetsToRefPt
( elemSET ) Description: Modifies the offsets of beam and bar elements so that the shape reference point is at the nodes. Input: INT4 elemSET Output: None Return Code: FE_FAIL Remarks/Usage: This method can only be used with elements that have offsets: beams and bars. Likewise, it can only be used if the reference point on the property associated with the elements has been properly defined. Offsets for each element are redefined so that the reference point is moved to the nodal location. Example: None Could not update. The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update.
API-502
feModifyOrient
3.10.7.12 feModifyOrient
feModifyOrient
( elemSET, method, nodeID, orientVec ) Description: Modifies the orientation of line elements. Input: INT4 elemSET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. Defines the method used for updating the orientation: 0=Orient with third node, 1=Orient with Vector, 2=Convert existing orientation to equivalent vectors, 3=Make existing orientation perpendicular to elements. The ID of the node to use as a third node for orientation - only used if method=0. The components, in global rectangular coordinates, of the orientation vector to use if method=1.
INT4 method
INT4 nodeID REAL8 orientVEC[0..2] Output: None Return Code: FE_FAIL Remarks/Usage:
This method can only be used with elements that have orientations. Example: None
feModifyElemType
API-503
3.10.7.13 feModifyElemType
feModifyElemType
( elemSET, propID, method, nodeID, orientVec ) Description: Modifies the element type of elements. Input: INT4 elemSET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. The ID of the new property to assign to the elements. The element type is changed to match the type of the property. Defines the method used for updating the orientation: 0=Orient with third node, 1=Orient with Vector. This parameter is only used if you are modifying line elements with no orientation to a type that requires orientation. The ID of the node to use as a third node for orientation - only used if method=0. This parameter is only used if you are modifying line elements with no orientation to a type that requires orientation. The components, in global rectangular coordinates, of the orientation vector to use if method=1. This parameter is only used if you are modifying line elements with no orientation to a type that requires orientation.
INT4 propID
INT4 method
INT4 nodeID
REAL8 orientVEC[0..2]
Output: None Return Code: FE_FAIL Remarks/Usage: This method will only work to change elements from one type to another if the element shapes are compatible. Example: None Could not update.
API-504
feModifyBeamWarping
3.10.7.14 feModifyBeamWarping
feModifyBeamWarping
( elemSET, method, nodeType,nodeID_endA, nodeID_endB ) Description: Modifies/Creates warping NODES or SPOINTS for Beam Warping. Input: INT4 elemSET The ID of a set that contains a list of element IDs that will be updated. Alternatively, if you specify a negative value, this is simply the ID of the single element to update. Defines the method for updating the warping node. 0 = None(Remove), 1 = Continuous, 2 = All Continuous, 3 = Discontinuous. The type of node to create 0 = Node, 1 = SPOINT. If the elemSET contains a single element then the warping node for endA and endB will be set to nodeID_endA, nodeID_endB respectively.
INT4 method INT4 nodeType INT4 nodeID_endA, nodeID_endB Output: None Return Code: FE_FAIL Remarks/Usage:
This method can only be used with Beam elements. Example: None
API-505
3.11 Delete Methods
Delete Methods include:
Section 3.11.1, "feDeleteAll" Section 3.11.2, "feDelete" Section 3.11.3, "feDeleteMesh" Section 3.11.5, "feDeleteConstraints" Section 3.11.6, "feDeleteOutput"
API-506
feDeleteAll
Coordinate systems will only be deleted if both geometry and the mesh are deleted. Example: None
feDelete
API-507
INT4 entityTYPE
You specified an invalid entityTYPE - the entityTYPE must be one of the values listed above.
Entities will only be deleted if they are not referenced by other entities. You should always delete entities in the order of their references to each other in the model. For example, delete elements first, properties next, and materials last. Example: None
API-508
feDeleteMesh
If you specify elements, those will be deleted. If you specify nodes, any element referencing any of the specified nodes will be deleted. Example: None
feDeleteLoads
API-509
INT4 entitySET
INT4 loadTYPE
Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None You specified an invalid entityTYPE or loadTYPE - they must be one of the values listed above.
API-510
feDeleteConstraints
INT4 entitySET BOOL deleteBC BOOL deleteBE Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None
You specified an invalid entityTYPE - it must be one of the values listed above.
feDeleteOutput
API-511
API-512
3.12 View, Window and Visibility Methods
View and Window Methods include:
Section 3.12.1, "feViewVisible (or feWindowVisible)" Section 3.12.2, "feViewRedraw (or feWindowRedraw)" Section 3.12.3, "feViewRegenerate (or feWindowRegenerate)" Section 3.12.4, "feViewAllViews" Section 3.12.5, "feViewShow (or feWindowShow)" Section 3.12.6, "feViewTile (or feWindowTile)" Section 3.12.7, "feWindowTileHorz" Section 3.12.8, "feViewCascade (or feWindowCascade)" Section 3.12.9, "feWindowMinimize" Section 3.12.10, "feWindowMaximize" Section 3.12.11, "feWindowRestore" Section 3.12.12, "feWindowSetRect" Section 3.12.13, "feWindowTitle" Section 3.12.14, "feEntityVisibility"
feViewVisible
API-513
API-514
feViewRedraw
feViewRegenerate
API-515
API-516
feViewAllViews
feViewShow
API-517
Like the Window, Show Entities command. feViewShow and feWindowShow are identical. Example: None
API-518
feViewTile
feWindowTileHorz
API-519
API-520
feViewCascade
feWindowMinimize
API-521
API-522
feWindowMaximize
feWindowRestore
API-523
API-524
feWindowSetRect
feWindowTitle
API-525
API-526
feEntityVisibility
INT4 visID
BOOL bIsVisible BOOL bRedraw Output: None Return Code: FE_INVALID Remarks/Usage: None Example: None
Invalid visType
feAppUpdateModelBox
API-527
API-528
3.13 Group Methods
Group Methods include:
Section 3.13.2, "feGroupBoolean" Section 3.13.4, "feGroupGenerate" Section 3.13.5, "feGroupGenSolid" Section 3.13.6, "feGroupGenProp" Section 3.13.7, "feGroupGenMatl" Section 3.13.8, "feGroupGenElemType" Section 3.13.9, "feGroupPeel"
feGroupEvaluate
API-529
This method accomplishes the same tasks as the Group, Operations, Evaluate command. Example: None
API-530
feGroupBoolean
feGroupCombine
API-531
API-532
feGroupGenerate
feGroupGenSolid
API-533
API-534
feGroupGenProp
feGroupGenMatl
API-535
API-536
feGroupGenElemType
feGroupPeel
API-537
API-538
feGroupMoveToLayer
API-539
3.14 Free Edge and Free Face Methods
Free Edge and Free Face Methods include:
API-540
feElementFreeEdge
The number of Free Edges returned Data that defines the Free Edges. This is an array, stored as follows... [element1, node1A, node1B, element2, node2A, node2B...]. Each free edge is defined by 3 entries in the array - the ID of the element containing the free edge, followed by the two corner nodes on the element of the free edge.
INT4 nFreeData[0..3*nFreeCount-1]
Return Code: FE_NO_MEMORY FE_FAIL Remarks/Usage: None Example: Could not allocate memory to return the Free Edge Data Could not compute the Free Edges for your selected elements.
feElementFreeFace
API-541
BOOL bParabolicEdges BOOL bPlaneElem Output: INT4 nFreeCount INT4 nFreeData[0..2*nFreeCount-1] Return Code: FE_NO_MEMORY FE_FAIL Remarks/Usage: None Example:
The number of Free Faces returned Data that defines the Free Faces. This is an array, stored as follows... [element1, face1, element2, face2, element3...]. Each free face is defined by 2 entries in the array - the ID of the element containing the free face, followed by the face ID
Could not allocate memory to return the Free Face Data Could not compute the Free Faces for your selected elements.
API-542
3.15 Standard Dialog Boxes
These methods include:
Section 3.15.1, "Coordinate Methods" Section 3.15.2, "Vector Methods" Section 3.15.3, "Plane Methods" Section 3.15.4, "Entity Selection Methods" Section 3.15.5, "Other Methods" including entering a real number or integer, bringing up a Message Box, using the Color Palette, and various other dialog box selection methods.
feCoordPick
API-543
feCoordPick
( dlgTITLE, xyz ) Description: This function displays a dialog box to allow a user to pick or enter coordinates. Input: STRING dlgTITLE Output: REAL8 xyz[0..2] Return Code: FE_CANCEL Remarks/Usage: The default coordinate values that are displayed when the dialog is displayed can be set using the global parameters Info_DefaultX, Info_DefaultY, and Info_DefaultZ before calling this function. Example: None The user cancelled the dialog box. Coordinates are not valid. The coordinates selected. Always returned in the global rectangular coordinate system. A string that specifies a title to be added to the dialog box title.
API-544
feCoordPickByMethod
3.15.1.2 feCoordPickByMethod
feCoordPickByMethod
( method, dlgTITLE, xyz ) Description: This function displays a dialog box to allow a user to pick or enter coordinates. Same as feCoordPick, but lets you specify the initial dialog box method Input: INT4 method STRING dlgTITLE Output: REAL8 xyz[0..2] Return Code: FE_CANCEL Remarks/Usage: The default coordinate values that are displayed when the dialog is displayed can be set using the global parameters Info_DefaultX, Info_DefaultY, and Info_DefaultZ before calling this function. Example: None The user cancelled the dialog box. Coordinates are not valid. The coordinates selected. Always returned in the global rectangular coordinate system. The initial dialog box method. Refer to Coordinate Dialog Methods for possible values. A string that specifies a title to be added to the dialog box title.
feCoordFromWorkplane
API-545
3.15.1.3 feCoordFromWorkplane
feCoordFromWorkplane
( wpXYZ, xyz ) Description: This function converts coordinates from workplane coordinates to global rectangular coordinates. Input: REAL8 wpXYZ[0..2] Output: REAL8 xyz[0..2] Return Code: None Remarks/Usage: None Example: None The coordinates selected. Always returned in the global rectangular coordinate system. The original workplane coordinates. Although three coordinates can be specified, normally wpXYZ[2] is 0.0 if the location is actually on the workplane.
API-546
feCoordToWorkplane
3.15.1.4 feCoordToWorkplane
feCoordToWorkplane
( xyz, wpXYZ ) Description: This function converts coordinates from workplane coordinates to global rectangular coordinates. Input: REAL8 xyz[0..2] Output: REAL8 wpXYZ[0..2] Return Code: None Remarks/Usage: None Example: None The workplane coordinates. Three coordinates are returned. wpXYZ[2] is the elevation off of the workplane. Ignore this value to get the coordinates in the workplane. The original coordinates. Must be specified in global rectangular coordinates.
feCoordIntersectCurves
API-547
3.15.1.5 feCoordIntersectCurves
feCoordIntersectCurves
( cuID1, cuID2, nearXYZ, xyz ) Description: This function finds the coordinates at the intersection of two curves. Input: INT4 cuID1 INT4 cuID2 REAL8 nearXYZ[0..2] Output: REAL8 xyz[0..2] Return Code: FE_INVALID Remarks/Usage: None Example: None The curve IDs may not specify the same curve. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the first curve to intersect. The ID of the second curve to intersect. A location near the desired intersection. This is not used unless there are multiple intersections detected.
API-548
feCoordIntersectLines
3.15.1.6 feCoordIntersectLines
feCoordIntersectLines
( infLine, pA1, pA2, pB1, pB2, pIntersect ) Description: This function finds the coordinates at the intersection of two lines which are specified by their endpoint coordinates. Input: BOOL infLine REAL8 pA1[0..2] REAL8 pA2[0..2] REAL8 pA1[0..2] REAL8 pA1[0..2] Output: REAL8 pIntersect[0..2] Return Code: FE_FAIL Remarks/Usage: None Example: None No intersection was found. This could be because the lines were parallel, or you were working with line segments and the intersection was outside of the segments you specified. The coordinates of the intersection point. Set to True if you want the intersection calculation to consider the lines as infinite. Set to False if you want to only consider the line segments between the endpoints that you provided. The coordinates of the first point on the first line. The coordinates of the second point on the first line. The coordinates of the first point on the second line. The coordinates of the second point on the second line.
feCoordOntoCurve
API-549
3.15.1.7 feCoordOntoCurve
feCoordOntoCurve
( cuID, fromXYZ, xyz ) Description: This function projects coordinates onto a curve. Input: INT4 cuID REAL8 fromXYZ[0..2] Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The selected curve does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the curve to project onto. The original location that is to be projected onto the curve.
API-550
feCoordAlongCurve
3.15.1.8 feCoordAlongCurve
feCoordAlongCurve
( cuID, fromSTART, cuLENGTH, xyz ) Description: This function finds the coordinates that are located at specified distance along a curve. Input: INT4 cuID BOOL fromSTART REAL8 cuLENGTH Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The selected curve does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the curve to measure along. If True, then the length is measured from the start of the curve; otherwise, it is measured from the end of the curve. The length, along the curve, from the selected endpoint to the coordinates.
feCoordCurveMidpoint
API-551
3.15.1.9 feCoordCurveMidpoint
feCoordCurveMidpoint
( cuID, xyz ) Description: This function finds the coordinates that are located at the midpoint of a curve. Input: INT4 cuID Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The selected curve does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the curve to measure along. The midpoint is halfway (along the curve) between the start and end of the curve.
API-552
feCoordCurveCenter
3.15.1.10 feCoordCurveCenter
feCoordCurveCenter
( cuID, xyz ) Description: This function finds the coordinates that are located at the center of an arc, circle, or solid curve that forms an arc or circle. Input: INT4 cuID Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: This function will return FE_FAIL if you give it any other curve type except an arc, circle or solid. If you choose a solid curve, this function assumes it is an arc/circle and returns the appropriate radius. No checking is done to ensure that it is an arc or circle. Example: None The selected curve does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the curve to find the center.
feCoordOntoSurface
API-553
3.15.1.11 feCoordOntoSurface
feCoordOntoSurface
( suID, fromXYZ, xyz ) Description: This function projects coordinates onto a selected surface. Input: INT4 suID REAL8 fromXYZ[0..2] Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The selected surface does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the surface to project onto. The original coordinate which will be projected.
API-554
feCoordInSurface
3.15.1.12 feCoordInSurface
feCoordInSurface
( suID, suXY, xyz ) Description: This function returns coordinates located at the parametric coordinates of a surface. Input: INT4 suID REAL8 suXY[0..1] Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The selected surface does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the surface to use. The parametric coordinates on the surface.
feCoordSurfaceIntersect
API-555
3.15.1.13 feCoordSurfaceIntersect
feCoordSurfaceIntersect
( cuID, suID, nearXYZ, xyz ) Description: This function returns coordinates located at the intersection of a curve and surface. Input: INT4 cuID INT4 suID REAL8 nearXY[0..2] Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The selected curve or surface does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the curve to use. The ID of the surface to use. Coordinates near the intersection location. This is only used if multiple intersections are found. In this case, the closest one to this location is returned. Specify in global rectangular coordinates.
API-556
feCoordOnPoint
3.15.1.14 feCoordOnPoint
feCoordOnPoint
( ptID, xyz ) Description: This function returns the coordinates of a point. Input: INT4 ptID Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The selected point does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the point to locate.
feCoordOnNode
API-557
3.15.1.15 feCoordOnNode
feCoordOnNode
( ndID, xyz ) Description: This function returns the coordinates of a node. Input: INT4 ndID Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None The selected node does not exist. The coordinates selected. Always returned in the global rectangular coordinate system. The ID of the node to locate.
API-558
feCoordTransform
3.15.1.16 feCoordTransform
feCoordTransform
( fromCSYS, fromXYZ, toCSYS, xyz ) Description: This function transforms coordinates from one coordinate system to another. Input: INT4 fromCSYS REAL8 fromXYZ[0..2] INT4 toCSYS Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None One of the coordinate systems does not exist. The transformed coordinates, returned in the toCSYS coordinate system. The two sets of coordinates MAY NOT be specified as the same variable. The ID of the coordinate system in which the fromXYZ coordinates are currently specified. Specify 0 for global rectangular. The coordinates to transform, specified in fromCSYS. The ID of the coordinate system to transform into.
feCoordArrayTransform
API-559
3.15.1.17 feCoordArrayTransform
feCoordArrayTransform
( count, fromCSYS, toCSYS, xyz ) Description: This function transforms an array of coordinates from one coordinate system to another. Input: INT4 count INT4 fromCSYS INT4 toCSYS Output: On input, this array contains the original coordinates. On output, it contains the transformed coordinates, returned in the toCSYS coordinate system. Coordinates in this array must be in the order X0,Y0,Z0,X1,Y1,Z1,...,Xcount,Ycount,Zcount. The number of sets of coordinates in xyz. There must be 3*count entries in xyz. The ID of the coordinate system in which the coordinates are currently specified. Specify 0 for global rectangular. The ID of the coordinate system to transform into.
REAL8 xyz[0..3*count-1]
Return Code: FE_INVALID FE_NOT_EXIST Remarks/Usage: NOTE: This method will not work with .NET because the xyz argument can not be used for both input and output. Use the feCoordArrayTransform2( ) method instead. Example: None The count must be a positive number. One of the coordinate systems does not exist.
API-560
feCoordArrayTransform2
3.15.1.18 feCoordArrayTransform2
feCoordArrayTransform2
( count, fromCSYS, toCSYS, inXYZ, xyz ) Description: This function transforms an array of coordinates from one coordinate system to another. Input: INT4 count INT4 fromCSYS INT4 toCSYS REAL8 inXYZ[0..3*count-1] Output: REAL8 xyz[0..3*count-1] Return Code: FE_INVALID FE_NOT_EXIST Remarks/Usage: This method replaces the feCoordArrayTransform( ) method which will not work with .NET Example: None The count must be a positive number. One of the coordinate systems does not exist. Contains the transformed coordinates, returned in the toCSYS coordinate system. Coordinates in this array are in the same order as in inXYZ. The number of sets of coordinates in xyz. There must be 3*count entries in xyz. The ID of the coordinate system in which the coordinates are currently specified. Specify 0 for global rectangular. The ID of the coordinate system to transform into. This array contains the original coordinates that will be transformed. Coordinates in this array must be in the order X0,Y0,Z0,X1,Y1,Z1,...,Xcount,Ycount,Zcount.
feCoordColinear
API-561
3.15.1.19 feCoordColinear
feCoordColinear
( xyz1, xyz2, xyz3, isColinear ) Description: This function checks three sets of coordinates and determines if they are colinear. Input: REAL8 xyz1[0..2] REAL8 xyz2[0..2] REAL8 xyz3[0..2] Output: BOOL isColinear Return Code: None Remarks/Usage: None Example: None True if the points are colinear (within the tolerance specified internally); False otherwise. The coordinates of the first point. This, and the other coordinates, must be stored in rectangular coordinates. The coordinates of the second point. The coordinates of the third point.
API-562
feCoordToDirCos
3.15.1.20 feCoordToDirCos
feCoordToDirCos
( origin, xAxis, xyPlane, dircos ) Description: This function converts three coordinates into a 3x3 direction cosine matrix. Input: REAL8 origin[0..2] REAL8 xAxis[0..2] REAL8 xyPlane[0..2] Output: REAL8 dircos[0..8] Return Code: None Remarks/Usage: All coordinates must be specified in rectangular coordinates. The direction cosine matrix is relative to whatever coordinate system the original points were specified in. Example: None The 3x3 direction cosine matrix. Data is stored in row-order. [0,0]=[0], [0,1]=[1], [0,2]=[2], [1,0]=3 ... [2,2]=[8] The location at the origin. A location along the positive X axis. A location in the positive quadrant of the XY plane.
feCoordRotate
API-563
3.15.1.21 feCoordRotate
feCoordRotate
( xyz, angle, origin, axis, xyzROT ) Description: This function takes a coordinate location and rotates it through a prescribed angle about a vector. Input: REAL8 xyz[0..2] REAL8 angle REAL8 origin[0..2] REAL8 axis[0..2] Output: REAL8 xyzROT[0..2] Return Code: None Remarks/Usage: All coordinates and vector components must be specified in the same rectangular coordinate system normally global rectangular. Example: None The rotated coordinates. The original unrotated coordinates - must be specified in rectangular coordinates. The angle of rotation. The coordinates at the origin/base of the rotation axis vector. The components of the rotation axis vector.
API-564
feCoordOntoPlane
3.15.1.22 feCoordOntoPlane
feCoordOntoPlane
( xyz, projDir, planePt, planeNorm, xyzPlane ) Description: This function takes a coordinate location and projects it along a vector onto a plane. Input: REAL8 xyz[0..2] REAL8 projDir[0..2] REAL8 planePt[0..2] REAL8 planeNorm[0..2] Output: REAL8 xyzPlane[0..2] Return Code: FE_FAIL Remarks/Usage: All coordinates and vector components must be specified in the same rectangular coordinate system normally global rectangular. Example: None The projection failed. Probably the projDir vector is parallel to the plane (perpendicular to planeNorm). The projected coordinates. The original unprojected coordinates - must be specified in rectangular coordinates. The components of the vector to project along. The coordinates of any point on the plane. The components of the normal vector of the plane.
feCoordOntoLine
API-565
3.15.1.23 feCoordOntoLine
feCoordOntoLine
( xyz, p1, p2, xyzLine ) Description: This function takes a coordinate location and projects it onto a line specified by two endpoint locations. Input: REAL8 xyz[0..2] REAL8 p1[0..2] REAL8 p2[0..2] Output: REAL8 xyzLine[0..2] Return Code: None Remarks/Usage: All coordinates and vector components must be specified in the same rectangular coordinate system normally global rectangular. The line which the coordinates are projected onto is considered to be infinite. Example: None The projected coordinates. The original unprojected coordinates - must be specified in rectangular coordinates. The first set of coordinates along the line. The second set of coordinates along the line.
API-566
feCoordPlaneIntersect
3.15.1.24 feCoordPlaneIntersect
feCoordPlaneIntersect
( baseA, normA, baseB, normB, baseC, normC, ptV ) Description: This function finds the coordinate location at the intersection of three planes. Input: REAL8 baseA[0..2] REAL8 normA[0..2] REAL8 baseB[0..2] REAL8 normB[0..2] REAL8 baseC[0..2] REAL8 normC[0..2] Output: REAL8 ptV[0..2] Return Code: FE_FAIL Remarks/Usage: All coordinates and vector components must be specified in the same rectangular coordinate system normally global rectangular. Example: None No intersection could be found. The coordinates at the intersection location. The coordinates of a point on the first plane. The components of the normal of the first plane. The coordinates of a point on the second plane. The components of the normal of the second plane. The coordinates of a point on the third plane. The components of the normal of the third plane.
feCoordVectorPlaneIntersect
API-567
3.15.1.25 feCoordVectorPlaneIntersect
feCoordVectorPlaneIntersect
( ptVEC, normVEC, ptPLANE, normPLANE, ptV ) Description: This function finds the coordinate location at the intersection of a vector and a plane. Input: REAL8 ptVEC[0..2] REAL8 normVEC[0..2] REAL8 ptPLANE[0..2] REAL8 normPLANE[0..2] Output: REAL8 ptV[0..2] Return Code: FE_FAIL Remarks/Usage: All coordinates and vector components must be specified in the same rectangular coordinate system normally global rectangular. Example: None No intersection could be found. The coordinates at the intersection location. The coordinates of a point on the vector The components of direction along the vector The coordinates of a point on the plane. The components of the normal of the plane.
API-568
feRotationTransform
3.15.1.26 feRotationTransform
feRotationTransform
( fromCSYS, fromROT, toCSYS, rot ) Description: This function transforms a triple rotation from one coordinate system to another. Input: INT4 fromCSYS REAL8 fromROT[0..2] INT4 toCSYS Output: REAL8 rot[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None One of the coordinate systems does not exist. The transformed rotations, returned in the toCSYS coordinate system. The two sets of rotations MAY NOT be specified as the same variable. The ID of the coordinate system in which the fromROT rotations are currently specified. Specify 0 for global rectangular. The rotations to transform, specified in fromCSYS. The rotations are triple rotations, about X, the rotated Y and the doubly-rotated Z. The ID of the coordinate system to transform into.
feRotationToDirCos
API-569
3.15.1.27 feRotationToDirCos
feRotationToDirCos
( rot, dircos ) Description: This function converts a triple-rotation, about X, then Y, then Z, into a 3x3 direction cosine matrix. Input: REAL8 rot[0..2] Output: REAL8 dircos[0..8] Return Code: None Remarks/Usage: Throughout this description, M is the dircos matrix. The direction cosine matrix is of the following form: X' = { M } X The rows of the matrix represent a vector in the primed direction relative to the unprimed coordinates. For example, {M[1][0],M[1][1],M[1][2]} is a vector in the Y' direction relative to X,Y,Z. Similarly, since this is a direction cosine matrix the columns of the matrix represent vectors in the unprimed direction relative to primed coordinates. For example: {M[0][1],M[1][1],M[2][1]} is a vector in the Y direction relative to X',Y',Z'. Example: None The 3x3 direction cosine matrix. Data is stored in row-order. [0,0]=[0], [0,1]=[1], [0,2]=[2], [1,0]=3 ... [2,2]=[8] The rotations, first about X, then the rotated Y, then the doublyrotated Z.
API-570
feRotationFromDirCos
3.15.1.28 feRotationFromDirCos
feRotationFromDirCos
( dircos, rot ) Description: This function converts a 3x3 direction cosine matrix into an equivalent triple-rotation, about X, then Y, then Z. Input: REAL8 dircos[0..8] Output: REAL8 rot[0..2] Return Code: None Remarks/Usage: There can be multiple possible solutions to the same direction cosine matrix. This routine simply returns one of the possible solutions. Example: None The rotations, first about X, then the rotated Y, then the doublyrotated Z. The 3x3 direction cosine matrix. Data is stored in row-order. [0,0]=[0], [0,1]=[1], [0,2]=[2], [1,0]=3 ... [2,2]=[8].
feVectorTransform
API-571
feVectorTransform
( fromCSYS, baseXYZ, fromXYZ, toCSYS, xyz ) Description: This function transforms vectors from one coordinate system to another. Input: INT4 fromCSYS REAL8 baseXYZ[0..2] REAL8 fromXYZ[0..2] INT4 toCSYS Output: REAL8 xyz[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None One of the coordinate systems does not exist. The transformed vector components, returned in the toCSYS coordinate system. The ID of the coordinate system in which the fromXYZ coordinates are currently specified. Specify 0 for global rectangular. The coordinates at the base of the vector to be transformed. Must be specified in the fromCSYS coordinate system. The components of the vector to be transformed. Must be specified in the fromCSYS coordinate system. The ID of the coordinate system to transform into.
API-572
feVectorFromBeam
3.15.2.2 feVectorFromBeam
feVectorFromBeam
( elemID, bmXYZ, xyz ) Description: This function transforms a vector from beam/bar elemental coordinates to global rectangular. Input: INT4 elemID REAL8 bmXYZ[0..2] Output: REAL8 xyz[0..2] Return Code: None Remarks/Usage: The element specified must exist, and must be an appropriate line element (beam, bar...) type. Example: None The transformed vector components, returned in the global rectangular coordinate system. The ID of the element that defines the coordinate system where the bmXYZ components are defined. The components of the vector to be transformed. Must be specified in the elemental coordinate system of element elemID.
feVectorToBeam
API-573
3.15.2.3 feVectorToBeam
feVectorToBeam
( elemID, xyz, bmXYZ ) Description: This function transforms a vector from global rectangular coordinates into beam/bar elemental coordinates. Input: INT4 elemID REAL8 xyz[0..2] Output: REAL8 bmXYZ[0..2] Return Code: None Remarks/Usage: The element specified must exist, and must be an appropriate line element (beam, bar...) type. Example: None The transformed vector components, returned in the elemental coordinates of elemID. The ID of the element that defines the coordinate system where the bmXYZ components are defined. The components of the vector to be transformed. Must be specified in global rectangular coordinates.
API-574
feVectorLength
3.15.2.4 feVectorLength
feVectorLength
( xyz, vecLength ) Description: This function computes the length of a vector. Input: REAL8 xyz[0..2] Output: REAL8 vecLength Return Code: None Remarks/Usage: None Example: None The length of the vector. The components of the vector to be measure. Must be specified in rectangular coordinates.
feVectorCrossProduct
API-575
3.15.2.5 feVectorCrossPoduct
feVectorCrossProduct
( vecA, vecB, vecAxB ) Description: This function computes the cross product of two vectors. Input: REAL8 vecA[0..2] REAL8 vecB[0..2] Output: REAL8 vecAxB[0..2] Return Code: None Remarks/Usage: None Example: None The components of the cross product of the two vectors. The components of the first vector. The components of the second vector.
API-576
feVectorDotProduct
3.15.2.6 feVectorDotProduct
feVectorDotProduct
( vecA, vecB, dot ) Description: This function computes the dot (scalar) product of two vectors. Input: REAL8 vecA[0..2] REAL8 vecB[0..2] Output: REAL8 dot Return Code: None Remarks/Usage: None Example: None The scalar product of the two vectors. The components of the first vector. The components of the second vector.
feVectorPerpendicular
API-577
3.15.2.7 feVectorPerpendicular
feVectorPerpendicular
( vecIN, vecOUT ) Description: This function computes an arbitrary vector that is perpendicular to the specified vector. Input: REAL8 vecIN[0..2] Output: REAL8 vecOUT[0..2] Return Code: None Remarks/Usage: If the vector specified is aligned with a global axis, you will always get a different global axis returned. If not, a cross product with either the global X (or global Z if the original vector is too close to the global X axis) is used to determine the perpendicular. Example: None The perpendicular vector. The components of the first vector.
API-578
feVectorAngle
3.15.2.8 feVectorAngle
feVectorAngle
( vecA, vecB, angle ) Description: This function computes the angle between two vectors. Input: REAL8 vecA[0..2] REAL8 vecB[0..2] Output: REAL8 angle Return Code: None Remarks/Usage: The angle is always between 0 and 180 degrees. There is no indication or consideration of the direction of the included angle between the vectors. Example: None The included angle between the two vectors. The components of the first vector. The components of the second vector.
feVectorAngleAxis
API-579
3.15.2.9 feVectorAngleAxis
feVectorAngleAxis
( vecA, vecB, axis, angle ) Description: This function computes the angle between two vectors rotating around an axis. Input: REAL8 vecA[0..2] REAL8 vecB[0..2] REAL8 axis[0..2] Output: REAL8 angle Return Code: None Remarks/Usage: The angle is always between -180 and 180 degrees. If the angle subtended when going from vecA to vecB is in a positive direction (right-hand rule sense) around the axis of rotation, then the returned angle is positive; otherwise a negative angle is returned. Example: None The included angle between the two vectors. The components of the first vector. The components of the second vector. The components of the axis of rotation.
API-580
feVectorPlaneIntersect
3.15.2.10 feVectorPlaneIntersect
feVectorPlaneIntersect
( baseA, normA, baseB, normB, ptV, dirV ) Description: This function computes the vector at the intersection of two planes. Input: REAL8 baseA[0..2] REAL8 normA[0..2] REAL8 baseB[0..2] REAL8 normB[0..2] Output: REAL8 ptV[0..2] REAL8 dirV[0..2] Return Code: None Remarks/Usage: All coordinates and components must be specified in the same rectangular coordinate system - normally global rectangular. Example: None The coordinates of a location on the intersection vector. The components of the vector along the line of intersection. The coordinates of a location on the first plane. The components of the normal vector of the first plane. The coordinates of a location on the second plane. The components of the normal vector of the second plane.
feVectorUnit
API-581
3.15.2.11 feVectorUnit
feVectorUnit
( vecIN, vecNORM ) Description: This function normalizes a vector to make it into an equivalent unit vector. Input: REAL8 vecIN[0..2] Output: REAL8 vecNORM[0..2] Return Code: None Remarks/Usage: In addition to simply dividing by the length of the vector, this function also completely eliminates components of the vector that are very small ( less than 1E-8 times the length) compared to the other components. This helps to eliminate numerical errors which can creep in during transformations or other vector operations. Example: None The normalized vector The componets of the vector to be normalized
API-582
feVectorPick
3.15.2.12 feVectorPick
feVectorPick
( dlgTitle, unitVector, vecLength, vecBase, vecDir ) Description: This function displays a dialog box to allow a user to pick or enter vectors. Input: STRING dlgTitle BOOL unitVector Output: REAL8 vecLength REAL8 vecBase[0..2] REAL8 vecDir[0..2] Return Code: FE_CANCEL Remarks/Usage: The components in vecDir will always be those of a unit vector. The vector length is always returned in vecLength. Example: None The dialog box was cancelled. The length of the vector. This will be 1.0 if unitVector=True. The coordinates at the base of the vector. The components of the vector. A string that specifies a title to be added to the dialog box title. Set to False if you want the user to be able to enter a vector length.
feVectorPickByMethod
API-583
3.15.2.13 feVectorPickByMethod
feVectorPickByMethod
( method, dlgTitle, unitVector, vecLength, vecBase, vecDir ) Description: This function displays a dialog box to allow a user to pick or enter vectors. Same as feVectorPick except that you can specify the initial dialog box method. Input: INT4 method STRING dlgTitle BOOL unitVector Output: REAL8 vecLength REAL8 vecBase[0..2] REAL8 vecDir[0..2] Return Code: FE_CANCEL Remarks/Usage: The components in vecDir will always be those of a unit vector. The vector length is always returned in vecLength. Example: None The dialog box was cancelled. The length of the vector. This will be 1.0 if unitVector=True. The coordinates at the base of the vector. The components of the vector. The initial dialog box method. Refer to Vector Dialog Methods for possible values. A string that specifies a title to be added to the dialog box title. Set to False if you want the user to be able to enter a vector length.
API-584
feVectorAxis
3.15.2.14 feVectorAxis
feVectorAxis
( csysID, axis, positive, vecDir ) Description: This function creates a unit vector in the direction of one of the axes of a coordinate system. Input: INT4 csysID INT4 axis BOOL positive Output: REAL8 vecDir[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: The components in vecDir will always be those of a unit vector. Example: None The coordinate system that you requested does not exist. The components of the vector. The ID of the coordinate system to use for the vector definition. Set to 0=X axis, 1=Y axis, 2=Z axis. True if you want the positive axis; False for the negative axis.
feVectorTangentToCurve
API-585
3.15.2.15 feVectorTangentToCurve
feVectorTangentToCurve
( cuID, baseXYZ, vecDir ) Description: This function returns a unit vector that is the tangent to a curve at a specified location. Input: INT4 cuID REAL8 baseXYZ[0..2] Output: REAL8 vecDir[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: The components in vecDir will always be those of a unit vector. If the location specified in baseXYZ is not on the curve, it will be projected onto the curve and the tangent will be at the projected location. Example: None The specified curve does not exist. The components of the tangent vector at baseXYZ. The ID of the curve used to compute the tangent. The coordinates of the location used to compute the tangent.
API-586
feVectorNormalToSurface
3.15.2.16 feVectorNormalToSurface
feVectorNormalToSurface
( suID, baseXYZ, vecDir ) Description: This function returns a unit vector that is the normal to a surface at a specified location. Input: INT4 suID REAL8 baseXYZ[0..2] Output: REAL8 vecDir[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: The components in vecDir will always be those of a unit vector. If the location specified in baseXYZ is not on the surface, it will be projected onto the surface and the normal will be at the projected location. Example: None The specified surface does not exist. The components of the normal vector at baseXYZ. The ID of the surface used to compute the normal. The coordinates of the location used to compute the normal.
feVectorNormalToView
API-587
3.15.2.17 feVectorNormalToView
feVectorNormalToView
( suID, vecDir ) Description: This function returns a unit vector that is the normal to a view. Input: INT4 vuID Output: REAL8 vecDir[0..2] Return Code: FE_NOT_EXIST Remarks/Usage: The components in vecDir will always be those of a unit vector. The normal vector always points out of the screen. Example: None The specified view does not exist. The components of the normal vector. The ID of the view used to compute the normal. Set to -1 to compute the normal of the active view.
API-588
feVectorAxisOfSurface
3.15.2.18 feVectorAxisOfSurface
feVectorAxisOfSurface
( suID, baseXYZ, vecDir ) Description: This function returns the axis of revolution for a surface. Input: INT4 suID Output: REAL8 baseXYZ[0..2] REAL8 vecDir[0..2] Return Code: FE_NOT_EXIST FE_CANCEL Remarks/Usage: None Example: None Surface does not exist. Unable to find surface axis or surface is not a revolute type. The coordinates at the base of the revolution vector. The components of the revolution vector. The ID of the surface to find revolution axis.
fePlanePick
API-589
fePlanePick
( dlgTITLE, plBase, plNormal, plAxis ) Description: This function displays a dialog box to allow a user to define a plane. Input: STRING dlgTitle Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_CANCEL Remarks/Usage: The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None The dialog box was cancelled. The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. A string that specifies a title to be added to the dialog box title.
API-590
fePlanePickByMethod
3.15.3.2 fePlanePickByMethod
fePlanePickByMethod
( method, dlgTITLE, plBase, plNormal, plAxis ) Description: This function displays a dialog box to allow a user to define a plane. Same as fePlanePick except you can specify the initial dialog box method. Input: INT4 method STRING dlgTitle Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_CANCEL Remarks/Usage: The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None The dialog box was cancelled. The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. The initial dialog box method. Refer to Plane Dialog Methods for possible values. A string that specifies a title to be added to the dialog box title.
fePlaneLocation
API-591
3.15.3.3 fePlaneLocation
fePlaneLocation
( p1, p2, p3, planeBase, planeNormal, planeX ) Description: Defines a plane by specifying the coordinates of three points on the plane. Input: REAL8 p1[0..2] REAL8 p2[0..2] REAL8 p3[0..2] Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_FAIL Remarks/Usage: The plane Y axis can be computed from a cross product of the Normal and the X axis. Example: None The three locations were colinear. The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. The coordinates of the points on the plane. The first point is the origin. The vector from the first to the second point is the X axis.
API-592
fePlaneNodes
3.15.3.4 fePlaneNodes
fePlaneNodes
( n1, n2, n3, planeBase, planeNormal, planeX ) Description: Defines a plane by specifying the IDs of three nodes on the plane. Input: INT4 n1 INT4 n2 INT4 n3 Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_FAIL Remarks/Usage: The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None The three locations were colinear. The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. The IDs of the three nodes on the plane. The first point is the origin. The vector from the first to the second point is the X axis.
fePlanePoints
API-593
3.15.3.5 fePlanePoints
fePlanePoints
( p1, p2, p3, planeBase, planeNormal, planeX ) Description: Defines a plane by specifying the IDs of three points on the plane. Input: INT4 p1 INT4 p2 INT4 p3 Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_FAIL Remarks/Usage: The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None The three locations were colinear. The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. The IDs of the three points on the plane. The first point is the origin. The vector from the first to the second point is the X axis.
API-594
fePlaneBisect
3.15.3.6 fePlaneBisect
fePlaneBisect
( p1, p2, p3, planeBase, planeNormal, planeX ) Description: Defines a plane that bisects the angle formed between three points. Input: REAL8 p1[0..2] REAL8 p2[0..2] REAL8 p3[0..2] Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_FAIL Remarks/Usage: The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None The three locations were colinear. The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. The location at the origin of the two vectors to be bisected. The end of the first vector (from p1) that will be used for the bisection. The end of the second vector (from p1) that will be used for the bisection.
fePlaneCSys
API-595
3.15.3.7 fePlaneCSys
fePlaneCSys
( p1, csysID, planeID, planeBase, planeNormal, planeX ) Description: Defines a plane that is one of the principal planes of a coordinate system. Input: REAL8 p1[0..2] INT4 csysID A location that will be the origin of the plane - specified in global coordinates. The ID of the coordinate system to use to define the plane. Specify as 0 for global coordinates. A number that selects the plane of the coordinate system to use: 0=Positive XY, 1=Positive, YZ, 2=Positive ZX, 3=Negative XY, 4=Negative, YZ, 5=Negative ZX.
INT4 planeID Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_FAIL Remarks/Usage:
The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis.
The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None
API-596
fePlaneSurfaceNormal
3.15.3.8 fePlaneSurfaceNormal
fePlaneSurfaceNormal
( surfID, ptID1, ptID2, reversed, align, offset, planeBase, planeNormal, planeX ) Description: Defines a plane that is normal to a surface. Input: INT4 surfID INT4 ptID1 INT4 ptID2 BOOL reversed BOOL align REAL8 offset Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_FAIL Remarks/Usage: The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None The surface was invalid or does not exist. The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. The ID of the surface used to define the normal. The ID of a point that will define the origin of the plane The ID of a point that will be used to define the X axis of the plane Set to True if you want the normal that is reversed from the surface normal. If True, the axis of the plane will be aligned to the surface axes. The distance that the plane will be offset, along its normal vector, from the first point (origin).
fePlaneCurveNormal
API-597
3.15.3.9 fePlaneCurveNormal
fePlaneCurveNormal
( cuID, planeBase, planeNormal, planeX ) Description: Defines a plane that is normal to a curve. Input: INT4 cuID Output: REAL8 plBase[0..2] REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_FAIL Remarks/Usage: The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None The curve was invalid or does not exist. The coordinates of a location on the plane, in global rectangular coordinates. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. The ID of the curve used to determine the normal. The curve must be planar, and cannot be a line. This is usually used with arcs and circles to determine their plane.
API-598
fePlaneViewAlign
3.15.3.10 fePlaneViewAlign
fePlaneViewAlign
( viewID, intoView, planeNormal, planeX ) Description: Defines a plane that is normal to a view. Input: INT4 viewID BOOL intoView Output: REAL8 plNormal[0..2] REAL8 plAxis[0..2] Return Code: FE_FAIL Remarks/Usage: The plane Y axis can be computed from a cross product of the normal and the X axis. Example: None The view was invalid or does not exist. The components of the vector that is normal to the plane. The components of a vector along the plane X axis. The ID of a view. Determines whether the normal will be into or out of the screen.
fePlaneViewAlign
API-599
Entity selection dialog boxes available in the FEMAP interface are available through the API using certain Set Object Methods. These Methods require you to create a FEMAP Set Object before they can be used. More information on these Set Object Methods can be found in: Section 4.4.2.25, "Select" - standard FEMAP entity selection dialog box Section 4.4.2.26, "SelectID" - standard Single entity selection dialog box in FEMAP. Section 4.4.2.28, "SelectMultiID" - standard Multiple entity selection dialog box in FEMAP. Section 4.4.2.29, "SelectOutputVectorID" - select a single Output Vector ID from a list of Output Vectors in a FEMAP dialog box. In addition to these methods that select entire entities using Sets, you can select output or element faces using the following methods:
API-600
feSelectOutput
3.15.4.2 feSelectOutput
feSelectOutput
( dlgTITLE, nBaseOutputSetID, limitOutputType, limitComplex, limitToEntity, includeCorner, pOutputSets, pOutputVecs ) Description: This function displays a dialog box to allow a user to select element faces. Input: STRING dlgTITLE A string that specifies a title to be used as the dialog box title. The ID of an output set to use to fill the Output Vector selection control. If 0, then the active Output Set is used, or if none is active, the first available one is used. If specified as a negative number, then the absolute value of that number is used, but the Output Set selection control only contains that Output Set, not all the sets available. Reduces list of output vectors shown to the specified type (0=All, 1=Disp, 2=Accel, 3=Force, 4=Stress, 5=Strain, 6=Temp) Reduces list of output vectors shown based on type of real or complex data they contain (0=Magnitude, 1=Phase, 2=Real, 3=Imaginary, 4=Any) Reduces list of output vectors to those containing data on the specified entity type If True, output vectors at element corners will also be included
INT4 nBaseOutputSetID
INT4 limitOutputType
INT4 limitComplex
INT4 limitToEntity BOOL includeCorner Output: OBJECT pOutputSets OBJECT pOutputVectors Return Code: FE_CANCEL FE_NOT_EXIST Remarks/Usage:
A Set object that contains the Output Sets that were selected. A Set object that contains the Output Vectors that were selected.
feSelectOutput
API-601
feSelectOutput
( dlgTITLE, nBaseOutputSetID, limitOutputType, limitComplex, limitToEntity, includeCorner, pOutputSets, pOutputVecs ) The following dialog box is used for the set/vector selection...
Checking the Include Components/Corner Results will automatically select related corner or vector component vectors, without having to manually check those vectors. Checking Select Similar Layer/ Ply/Corner Vectors will automatically select the same output type on various layers or plys - for example, if this is checked, picking the Plate Top X Normal Stress will also select the Plate Bottom X Normal Stress, or for laminates, results across all plies. Example:
API-602
feSelectOutput
feSelectOutput
( dlgTITLE, nBaseOutputSetID, limitOutputType, limitComplex, limitToEntity, includeCorner, pOutputSets, pOutputVecs ) The following routine allows you to select output vectors and list the max/min values for selected elements... Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim Dim Dim Set Dim Set Dim Dim Dim Dim s As femap.Set v As femap.Set e As femap.Set e = App.feSet ov As femap.output ov = App.feOutput minID As Long maxID As Long minVAL As Double maxVAL As Double
Dim rc As Long If App.feSelectOutput( "Select Output Vectors", 0, FOT_ANY, FOC_ANY, FT_ELEM, False, s, v ) = FE_OK Then If e.Select( FT_ELEM, True, "Select Elements" ) = FE_OK Then While s.Next() v.Reset() While v.Next() ov.GetFromSet( s.CurrentID(), v.CurrentID() ) ov.FindMaxMin(e.ID, True, minID, minVAL, maxID, maxVAL) App.feAppMessage( FCM_NORMAL, Str$(s.CurrentID)+" "+Str$(v.CurrentID)+" "+Str$(minID)+" "+Str$(minVAL)+" "+Str$(maxID)+" "+Str$(maxVAL) ) Wend Wend End If End If End Sub
feGetElementFaces
API-603
3.15.4.3 feGetElementFaces
feGetElementFaces
( dlgTITLE, orig_nCount, orig_elemID, orig_faceID, nCount, elemID, faceID ) Description: This function displays a dialog box to allow a user to select element faces. Input: STRING dlgTITLE INT4 orig_nCount INT4 orig_elemID[0..orig_nCount-1] INT4 orig_faceID[0..orig_nCount-1] Output: INT4 nCount INT4 elemID[0..nCount-1] INT4 faceID[0..nCount-1] Return Code: FE_CANCEL Remarks/Usage: Element faces are paired in the elemID/faceID arrays. The face ID corresponds to the element ID at the same index in the array. Example: None The user cancelled the dialog box. Value is not valid. The number of elements/faces that have been selected. Unless some or all of the orig faces were deleted, they will also be contained in this list. The element IDs that were selected The face IDs that were selected A string that specifies a title to be used as the dialog box title. The number of elements/faces that are contained in orig_elemID and orig_faceID. These element faces are displayed in the dialog box when it is opened. Specify 0 to display an empty dialog box. The element IDs to be loaded when the dialog is opened The face IDs to be loaded when the dialog is opened
API-604
feGetElementEdges
3.15.4.4 feGetElementEdges
feGetElementEdges
( dlgTITLE, orig_nCount, orig_elemID, orig_edgeID, nCount, elemID, edgeID ) Description: This function displays a dialog box to allow a user to select element edges. Input: STRING dlgTITLE INT4 orig_nCount INT4 orig_elemID[0..orig_nCount-1] INT4 orig_edgeID[0..orig_nCount-1] Output: INT4 nCount INT4 elemID[0..nCount-1] INT4 edgeID[0..nCount-1] Return Code: FE_CANCEL Remarks/Usage: Element edges are paired in the elemID/edgeID arrays. The edge ID corresponds to the element ID at the same index in the array. The edgeID is the same as the faceID on the edge of planar elements. This method simply limits selection to those edge faces. Example: None The user cancelled the dialog box. Value is not valid. The number of elements/edges that have been selected. Unless some or all of the orig edges were deleted, they will also be contained in this list. The element IDs that were selected The edge IDs that were selected A string that specifies a title to be used as the dialog box title. The number of elements/edges that are contained in orig_elemID and orig_faceID. These element faces are displayed in the dialog box when it is opened. Specify 0 to display an empty dialog box. The element IDs to be loaded when the dialog is opened The edgeIDs to be loaded when the dialog is opened
feGetReal
API-605
feGetReal
( dlgTITLE, lowerlimit, upperlimit, value ) Description: This function displays a dialog box to allow a user to enter a real number. Input: STRING dlgTITLE REAL8 lowerlimit REAL8 upperlimit Output: REAL8 value Return Code: FE_CANCEL Remarks/Usage: None Example: None The user cancelled the dialog box. Value is not valid. The number entered by the user. On input, value is displayed as the default. A string that specifies a title to be used as the dialog box title. The minimum acceptable value for the number The maximum acceptable value for the number
API-606
feGetInt
3.15.5.2 feGetInt
feGetInt
( dlgTITLE, lowerlimit, upperlimit, value ) Description: This function displays a dialog box to allow a user to enter an integer number. Input: STRING dlgTITLE INT4 lowerlimit INT4 upperlimit Output: INT4 value Return Code: FE_CANCEL Remarks/Usage: None Example: None The user cancelled the dialog box. Value is not valid. The number entered by the user. On input, value is displayed as the default. A string that specifies a title to be used as the dialog box title. The minimum acceptable value for the number The maximum acceptable value for the number
feAppMessageBox
API-607
3.15.5.3 feAppMessageBox
feAppMessageBox
( msgmode, message ) Description: Displays a message box, asking the user to press a button to continue. Input: INT4 msgmode STRING message Output: None Return Code: FE_OK FE_FAIL FE_CANCEL Remarks/Usage: This method is useful if your application is windowless since it insures the Message Box will be displayed on top of all FEMAP windows. Example: None User pressed either the OK or Yes button User pressed No button User pressed Cancel button Determines the buttons that will be available in the box. 0=OK, 1=OK and Cancel, 2 = Yes and No, 3 = Yes, No and Cancel The text of the message to write. Must be less than 160 characters.
API-608
feAppColorPalette
3.15.5.4 feAppColorPalette
feAppColorPalette
( nDefault, nColor ) Description: Displays the color palette dialog box allowing a user to pick a color. Input: INT4 nDefault Output: INT4 nColor Return Code: FE_OK Remarks/Usage: None Example: None Dialog box was displayed. Returns FE_OK even if Cancel is pressed. The color/pattern/linestyle that the user selected. If the user presses Cancel, this will be the same as nDefault The default color, used to initialize the dialog box. This is a combination of the desired color, pattern and linestyle.
feScreenPctPick
API-609
3.15.5.5 feScreenPctPick
feScreenPctPick
( x, y ) Description: Displays a dialog box that allows picking a location in a view Input: None Output: REAL8 x REAL8 y Return Code: FE_CANCEL Remarks/Usage: None Example: None Dialog box was cancelled. The x (horizontal) and y (vertical) locations in the view. These values are returned as a percentage of the overall view size - i.e. 0.8 means 80% of the way from the top/left to the bottom/right of the view.
API-610
3.16 User Interface Methods
User Interface Methods include the following topics:
Section 3.16.1, "Model Activation and Management" Section 3.16.2, "Window Management" Section 3.16.3, "View Management" Section 3.16.4, "Toolbar and Menu Customization" Section 3.16.5, "Embedding Applications" Section 3.16.6, "Locking FEMAP" Section 3.16.7, "Status Bar" Section 3.16.8, "Message Window" Section 3.16.9, "Real Number Text Formatting" Section 3.16.10, "Other Utilities"
feAppGetModel
API-611
feAppGetModel
( model ) Description: Retrieves the internal ID of the active model Input: None Output: INT8 model Return Code: FE_FAIL Remarks/Usage: You can call this function after creating a New model, or Opening a model to retrieve its internal ID, so if you activate other models, you can reactivate the original by calling feAppSetModel Example: None There is no active model The ID of the active model
API-612
feAppGetModelName
3.16.1.2 feAppGetModelName
feAppGetModelName
( model, ModelName ) Description: Retrieves the name of the selected model Input: INT8 model Output: STRING ModelName Return Code: FE_FAIL Remarks/Usage: If the model has not yet been saved, it will not have a name, and the ModelName will be returned as Untitled. You can use this method in conjunction with feAppGetAllModels( ) to retrieve the names of all open models. Example: None The specified model is not currently open. The name of the active model The ID of the model to retrieve the name.
feAppSetModel
API-613
3.16.1.3 feAppSetModel
feAppSetModel
( model ) Description: Activates a model chosen by its internal ID Input: INT8 model Output: None Return Code: FE_FAIL Remarks/Usage: You can find the ID of the active model using feAppGetMethod, and that ID can then be passed to this method at a later time to reactivate the model. Example: None The model ID that you specified is not a valid, open model The ID of the model that you want to activate
API-614
feAppSetModelByName
3.16.1.4 feAppSetModelByName
feAppSetModelByName
( fName ) Description: Activates a model chosen by specifying its filename Input: STRING fName Output: None Return Code: FE_FAIL Remarks/Usage: To use this method successfully, you must specify a complete filename, including the directory/path, and the .MOD extension. You can retrieve the full name of the active model from the ModelName parameter. This method can normally only be used for models that have been saved or opened from a saved model. When a new, unsaved model is created, the model name is not defined. You can activate an unsaved model by setting fName to an empty/blank () string, however if you have multiple unsaved models, you will always activate the first one opened, and the others can not be accessed with this method. Example: To activate a saved model rc = femap.feFileSetActiveName("c:\models\xyz.mod") To activate a new, unsaved model rc = femap.feFileSetActiveName( ) The model name that you specified is not a valid, open model The complete filename of the model that you want to activate
feAppCountModels
API-615
3.16.1.5 feAppCountModels
feAppCountModels
( numModels ) Description: Finds the number of models that are currently opened Input: None Output: INT4 numModels Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to retrieve the number of active models The number of currently opened models. Could be 0 if no models are open.
API-616
feAppGetAllModels
3.16.1.6 feAppGetAllModels
feAppGetAllModels
( numModels, model ) Description: Finds the number of models that are currently opened Input: None Output: INT4 numModels INT8 model[0..numModels-1] Return Code: FE_FAIL Remarks/Usage: This function will return the IDs of all currently opened models, which can then be used with feAppSetModel to activate any of those desired models. Example: None There are either no models opened, or unable to retrieve the model IDs The number of currently opened models. The IDs of all of the currently opened models.
feAppModelContents
API-617
3.16.1.7 feAppModelContents
feAppModelContents
( bList, nEmptyBlocks, nEntityBlocks ) Description: Finds, and alternatively lists, the number of blocks of each entity type that are currently in the model Input: BOOL bList Output: INT4 nEmptyBlocks The number of blocks which are allocated but unused because data has been deleted. These blocks will be reused as new data is added to the database. An array of the number of blocks being used for each entity type. The index in this array is the Entity Type being reported. Common Entity types are define in Section 3.3.6, "Entity Types". If True, a report of the contents is written to the Message Window
INT4 nEntityBlocks[0..max]
Return Code: FE_FAIL Remarks/Usage: The number of bytes in a Database block can change from version to version, however currently one block is 4096 bytes. Example: None There are either no models opened, or unable to retrieve the model information
API-618
feAppModelDefragment
3.16.1.8 feAppModelDefragment
feAppModelDefragment
( void ) Description: Rearranges data in the model so that it is organized with similar data grouped together. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method will rearrange data in your model. Defragmenting should improve performance. Another way to accomplish this is to write a Neutral File and read it into a new model. Example: None Unable to defragment
feAppManageToolbars
API-619
feAppManageToolbars
( barName, visible ) Description: Makes one or more toolbars visible (or hidden) Input: STRING barName BOOL visible Output: None Return Code: FE_FAIL Remarks/Usage: The names of the toolbars can be found by running FEMAP manually and looking on the Tools->Toolbars menu. In addition to the toolbars listed there, you can also control the visibility of the Menu using this method - simply use the barName of Menu Bar. If you want to set all possible toolbars in a single call, set barName to an empty string (). This method is identical to the feSetToolbarVisible method. Example: None Unable to find the selected toolbar. The name of the toolbar to manage If True, the toolbar is made visible, otherwise it is hidden
API-620
feAppManagePanes
3.16.2.2 feAppManagePanes
feAppManagePanes
( paneName, action ) Description: Changes the state of one or more of the docking panes Input: STRING paneName INT4 action Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: The names of the panes can be found in the title bars of the panes. Currently they are Entity Editor, Messages, Data Table, and Model Info. If you have added your own application into FEMAP using feAppRegisterAddInPane, the title of your window will also be available. If you want to set all possible panes in a single call, set paneName to an empty string (). If you dock a pane as a tab, you can undock/float it by calling this method with Toggle Docking. If you then call this method again with Toggle Docking, the pane will be docked in its open state (not as a tab). Example: None Unable to find the selected pane. Invalid action specified. The name of the pane to manage 0=Hide, 1=Show/Visible, 2=Dock as a Tab, 3=Toggle Docking
feAppUpdatePanes
API-621
3.16.2.3 feAppUpdatePanes
feAppUpdatePanes
( fullRefresh ) Description: Updates the contents of the docking panes Input: BOOL fullRefresh Output: None Return Code: None Remarks/Usage: If called with fullRefresh=False, then it must be called after each command, before redraws occur, otherwise some changes may be lost. Example: None If True, the Model Info pane is fully rebuilt, otherwise incremental changes are added to all panes.
API-622
feAppManageStatusBar
3.16.2.4 feAppManageStatusBar
feAppManageStatusBar
( visible ) Description: Sets the visibility of the status bar Input: BOOL visible Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to find the status bar If True, show the status bar, otherwise hide it
feAppManageGraphicsTabs
API-623
3.16.2.5 feAppManageGraphicsTabs
feAppManageGraphicsTabs
( visible ) Description: Sets the visibility of the tabs on the top of the graphics windows Input: BOOL visible Output: None Return Code: FE_FAIL Remarks/Usage: The tabs controlled by this method are shown here: Unable to find the tabs If True, show the tabs, otherwise hide them
Example: None
API-624
feAppGetActiveView
feAppGetActiveView
( viewID ) Description: Retrieves the ID of the active view in the active model. Input: None Output: INT4 viewID Return Code: FE_FAIL Remarks/Usage: This method allows you to retrieve the active view from the active model. Example: None There is no active view. The ID of the active view.
feAppSetActiveView
API-625
3.16.3.2 feAppSetActiveView
feAppSetActiveView
( viewID ) Description: Activates a view in the active model chosen by its ID. Input: INT4 viewID Output: None Return Code: None Remarks/Usage: This method allows you to activate any existing view in the active model. Use feAppGetActiveView and feAppGetAllViews to retrieve the IDs of views that can be activated. Example: None The ID of the view that you want to activate.
API-626
feAppGetAllViews
3.16.3.3 feAppGetAllViews
feAppGetAllViews
( numViews, viewID ) Description: Retrieves the IDs of all the visible views in the active model as well as the number of views that are visible. Input: None Output: INT4 numViews INT4 viewID[0..numViews-1] Return Code: FE_FAIL Remarks/Usage: This method allows you to return the IDs of all the views that are currently visible, which can then be activated with feAppSetActiveView. Example: None No views exist. The number of views visible in the active model. The IDs of all of the views visible in the active model.
feGetUserCommands
API-627
feGetUserCommands
( numCmd, sTitle, sCmd, sArg, sStartDir ) Description: Retrieves all user commands that have been defined Input: None Output: INT4 numCmd STRING sTitle[0..numCmd-1] STRING sCmd[0..numCmd-1] STRING sArg[0..numCmd-1] STRING sStartDir[0..numCmd1] Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: None Example: None Unable to retrieve the user commands No user commands are defined. The number of user commands that are current defined, and the number of entries in the other arrays The title assigned to each command The command line used to execute the command Any command line arguments assigned to the command The starting directory, if any, for the command.
API-628
feAddUserCommand
3.16.4.2 feAddUserCommand
feAddUserCommand
( sTitle, sCmd, sArg, sStartDir ) Description: Defines a user command that can then be used in the menu or toolbar Input: STRING sTitle STRING sCmd STRING sArg STRING sStartDir Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: User commands defined with this method can be assigned to a toolbar using the feAddToolbarUserCommand method. Example: None Unable to add the user commands A user command with the same title has already been defined. You must specify a unique title. The title assigned to the command. This title is used later to assign the command to the menu or toolbar. It must be unique when compared to all other user commands. The command line used to execute the command Any command line arguments assigned to the command The starting directory, if any, for the command.
feDeleteUserCommand
API-629
3.16.4.3 feDeleteUserCommand
feDeleteUserCommand
( sTitle ) Description: Deletes a user command Input: STRING sTitle Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to delete the user commands The title of the command to be deleted.
API-630
feGetToolbars
3.16.4.4 feGetToolbars
feGetToolbars
( numBars, barID, barVisible, barTitle ) Description: Retrieves all toolbars that have been defined Input: None Output: INT4 numBars INT4 barID[0..numBars-1] BOOLEAN barVisible[0..numBars-1] STRING barTitle[0..numBars1] Return Code: FE_FAIL Remarks/Usage: Toolbars do not need to be visible on the screen to be accessed by this method. Example: None Unable to retrieve the toolbar information The number of toolbars that are current defined, and the number of entries in the other arrays. The ID of each toolbar A flag indicating whether the toolbar is currently visible. True=Visible. The title of the toolbar.
feAddToolbar
API-631
3.16.4.5 feAddToolbar
feAddToolbar
( barName, barLocation ) Description: Creates a new toolbar Input: STRING barName INT4 barLocation Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: After creating a toolbar with this method, you can add commands to it using either feAddToolbarCommand or feAddToolbarUserCommand Example: None Unable to add the toolbar A toolbar with the same title has already been defined. You must specify a unique title. The title assigned to the toolbar. This title must be unique, and will be used in other methods to access the toolbar. The location where the bar will be docked. 0=Top, 1=Left, 2=Right, 3=Top, 4=Bottom
API-632
feAddToolbarSubmenu
3.16.4.6 feAddToolbarSubmenu
feAddToolbarSubmenu
( barName, cmdIndex, menuName, menuID ) Description: Creates a new submenu in a toolbar Input: STRING barName INT4 cmdIndex STRING menuName Output: INT4 menuID Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: After creating a toolbar with this method, you can add commands to it using either feAddToolbarSubmenuCommand or feAddToolbarSubmenuUserCommand, or submenus using feAddToolbarSubmenuSubmenu Example: None Unable to add the menu The toolbar barName does not exist. ID of the menu that was inserted - needed for feAddToolbarSubmenuSubmenu, feAddToolbarSubmenuCommand or feAddToolbarSubmenuUserCommand to add commands or submenus to this menu The title assigned to the toolbar. This title must be unique, and will be used in other methods to access the toolbar. Location in barName to place the new menu. 0=Before first item, -1=After last item, N=After Nth item. Title to be used for the menu drop-down.
feAddToolbarSubmenuSubmenu
API-633
3.16.4.7 feAddToolbarSubmenuSubmenu
feAddToolbarSubmenuSubmenu
( menuID, cmdIndex, menuName, submenuID ) Description: Adds a new submenu to a submenu on a toolbar. Input: INT4 menuID The ID of the menu where you want to place the command. This is returned by feAddToolbarSubmenu The location in the menu for the submenu. 0=At the front of the menu before any other buttons. -1=At the end of the menu, after all other buttons. Any other positive value means after that button. Title to be used for the menu drop-down.
INT4 cmdIndex STRING menuName Output: INT4 submenuID Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: None Example: None
ID of the menu that was inserted - needed for feAddToolbarSubmenuCommand or feAddToolbarSubmenuUserCommand to add commands to this menu
API-634
feDeleteToolbar
3.16.4.8 feDeleteToolbar
feDeleteToolbar
( barName ) Description: Deletes a toolbar Input: STRING barName Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to delete the toolbar The title of the toolbar to be deleted.
feResetToolbar
API-635
3.16.4.9 feResetToolbar
feResetToolbar
( barName ) Description: Resets a toolbar back to its original state Input: STRING barName Output: None Return Code: FE_FAIL Remarks/Usage: You can call this method to reset any changes you have made in the predefined FEMAP toolbars and menu back to their default configuration. This method will always display a dialog box asking the user to confirm resetting the toolbar. Example: None Unable to reset the toolbar The title of the toolbar to be reset. If this is an empty string () then all toolbars will be reset.
API-636
feSetToolbarVisible
3.16.4.10 feSetToolbarVisible
feSetToolbarVisible
( barName, bVisible ) Description: Makes one or more toolbars visible (or hidden) Input: STRING barName BOOLEAN bVisible Output: None Return Code: FE_FAIL Remarks/Usage: The names of the toolbars can be found by running FEMAP manually and looking on the Tools->Toolbars menu. In addition to the toolbars listed there, you can also control the visibility of the Menu using this method - simply use the barName of Menu Bar. This method is identical to the feAppManageToolbars method. Example: None Unable to reset the toolbar The title of the toolbar to be updated. If this is an empty string () then all toolbars will be reset. If True, the toolbar will be made visible. If False, it will be hidden.
feGetMenuCommands
API-637
3.16.4.11 feGetMenuCommands
feGetMenuCommands
( menuName1, menuName2, numCmds, cmdID, cmdTitle ) Description: Retrieves information about all commands on a selected menu Input: STRING menuName1 The menu name you see at the top level (for example, File). Specify an empty string () here to retrieve information about the commands at the top level (File, Tools, ...) The menu name you see inside the top level menu (for example, Import if menuName1=File). Specify an empty string here to retrieve the commands on the drop down from the top level.
The number of commands on this menu, and the number of entries in the other arrays. The IDs of the commands associated with each menu item. The cmdID of any item on the menu that is a drop-down (rather than a command) will be -1. The titles of the commands associated with each menu item.
Unable to retrieve information about the specified menu - make sure you are specifying the name of a drop-down menu, and not an individual command
When specifying the menu names, you should always leave off the ... characters and shortcut key specifications. Also do not include any special characters to represent the underlined letters - just specify the title as if nothing was underlined. Example: Retrieve the commands on the View->Advanced Post menu rc = femap.feGetMenuCommands("View", "Advanced Post", n, i, t) Retrieve the commands on the Tools menu rc = femap.feGetMenuCommands("Tools", "", n, i, t)
API-638
feGetMenuCommand
3.16.4.12 feGetMenuCommand
feGetMenuCommand
( menuName1, menuName2, menuName3, cmdID ) Description: Retrieves the ID of a specified command Input: STRING menuName1 STRING menuName2 The menu name you see at the top level (for example, File). The menu name you see inside the top level menu (for example, Save As if menuName1=File). Specify an empty string here to retrieve a command on the top level of the menu. The menu name you see inside the first level drop-down menu (for example, Analysis Results if menuName1=File, and menuName2=Import). Specify an empty string here to retrieve a command on the first level drop-down menu.
STRING menuName3
Output: INT4 cmdID Return Code: FE_FAIL Remarks/Usage: When specifying the menu names, you should always leave off the ... characters and shortcut key specifications. Also do not include any special characters to represent the underlined letters - just specify the title as if nothing was underlined. Example: None Unable to retrieve information about the specified menu. The ID of the command associated with the menu item. The cmdID of any item on the menu that is a drop-down (rather than a command) will be -1.
feGetToolbarCommands
API-639
3.16.4.13 feGetToolbarCommands
feGetToolbarCommands
( barName, numCmds, cmdID, cmdVisible, cmdSubmenu, cmdTitle ) Description: Retrieves information about all commands on a selected toolbar Input: STRING barName Output: INT4 numCmds INT4 cmdID[0..numCmds-1] BOOLEAN cmdVisible[0..numCmds-1] BOOLEAN cmdSubmenu[0..numCmds-1] STRING cmdTitle[0..numCmds-1] Return Code: FE_FAIL FE_NOT_AVAILABLE FE_INVALID Remarks/Usage: None Example: None Unable to retrieve information about the specified toolbar commands No commands are available on the selected toolbar Unable to find the specified toolbar The number of commands on this toolbar, and the number of entries in the other arrays. The IDs of the commands associated with each toolbar item. A flag indicating whether or not the item is currently visible on the toolbar. True=Visible. A flag indicating whether the item is a command button, or a button that drops down another menu. True=Drop-Down a Submenu The titles of the commands associated with each toolbar item. The title of the toolbar containing the commands to be retrieved.
API-640
feGetToolbarSubCommands
3.16.4.14 feGetToolbarSubCommands
feGetToolbarSubCommands
( cmdID, numCmds, cmdID, cmdVisible, cmdTitle ) Description: Retrieves information about all commands on a menu that drops-down from a toolbar button. Input: INT4 cmdID Output: INT4 numCmds INT4 cmdID[0..numCmds-1] BOOLEAN cmdVisible[0..numCmds-1] STRING cmdTitle[0..numCmds-1] Return Code: FE_FAIL FE_NOT_AVAILABLE FE_INVALID Remarks/Usage: None Example: None Unable to retrieve information about the specified menu commands No commands are available on the selected menu Unable to find the specified toolbar The number of commands on this menu, and the number of entries in the other arrays. The IDs of the commands associated with each menu item. A flag indicating whether or not the item is currently visible on the menu. True=Visible. The titles of the commands associated with each menu item. The ID of the toolbar button that drops down the menu
feGetToolbarCommand
API-641
3.16.4.15 feGetToolbarCommand
feGetToolbarCommand
( barName, cmdIndex, cmdID ) Description: Finds the ID of the command associated with a toolbar button Input: STRING barName INT4 cmdIndex Output: INT4 cmdID Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: None Example: None Unable to find the toolbar The specified button does not exist on the toolbar The command ID associated with the button The title of the toolbar to be searched. The index of the button to retrieve. The first button on the toolbar is button 0, the second is 1, and so on.
API-642
feAddToolbarCommand
3.16.4.16 feAddToolbarCommand
feAddToolbarCommand
( barName, cmdIndex, cmdID ) Description: Adds a new button to a toolbar and associates it with a standard command. Input: STRING barName INT4 cmdIndex INT4 cmdID Output: None Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: None Example: None Unable to add the command. The toolbar does not exist. The title of the toolbar where the command button will be placed. The location on the toolbar for the button. 0=At the front of the toolbar before any other buttons. -1=At the end of the toolbar, after all other buttons. Any other positive value means after that button. The command ID associated with the button
feAddToolbarSubmenuCommand
API-643
3.16.4.17 feAddToolbarSubmenuCommand
feAddToolbarSubmenuCommand
( menuID, cmdIndex, cmdID ) Description: Adds a new button to a submenu on a toolbar and associates it with a standard command. Input: INT4 menuID The ID of the menu where you want to place the command. This is returned by feAddToolbarSubmenu The location in the menu for the button. 0=At the front of the menu before any other buttons. -1=At the end of the menu, after all other buttons. Any other positive value means after that button. The command ID associated with the button
INT4 cmdIndex INT4 cmdID Output: None Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: None Example: None
API-644
feAddToolbarUserCommand
3.16.4.18 feAddToolbarUserCommand
feAddToolbarUserCommand
( barName, cmdIndex, cmdTitle, cmdBitmap, cmdID ) Description: Adds a new button to a toolbar and associates it with a user command. Input: STRING barName INT4 cmdIndex The title of the toolbar where the command button will be placed. The location on the toolbar for the button. 0=At the front of the toolbar before any other buttons. -1=At the end of the toolbar, after all other buttons. Any other positive value means after that button. The title of the user command to associate with the button. This is the title given to the command in feAddUserCommand. The full pathname of a Windows Bitmap file that will be the icon associated with the button. Specify an empty string () if you do not want the button to display as an icon - it will then display as text. Refer to feSetToolbarCommandBitmap for more information about defining the bitmap to be used for the icon.
STRING cmdTitle
STRING cmdBitmap
Output: INT4 cmdID Return Code: FE_FAIL FE_NOT_EXIST FE_NOT_AVAILABLE Remarks/Usage: None Example: None Unable to add the command. The toolbar does not exist. The specified user command has not been defined. The command ID assigned to the button
feAddToolbarSubmenuUserCommand
API-645
3.16.4.19 feAddToolbarSubmenuUserCommand
feAddToolbarSubmenuUserCommand
( menuID, cmdIndex, cmdTitle, cmdBitmap, cmdID ) Description: Adds a new button to a submenu and associates it with a user command. Input: INT4 menuID INT4 cmdIndex The ID of the menu where the command button will be placed. The location on the menu for the button. 0=At the front of the menu before any other buttons. -1=At the end of the menu, after all other buttons. Any other positive value means after that button. The title of the user command to associate with the button. This is the title given to the command in feAddUserCommand. The full pathname of a Windows Bitmap file that will be the icon associated with the button. Specify an empty string () if you do not want the button to display as an icon - it will then display as text. Refer to feSetToolbarCommandBitmap for more information about defining the bitmap to be used for the icon.
STRING cmdTitle
STRING cmdBitmap
Output: INT4 cmdID Return Code: FE_FAIL FE_NOT_EXIST FE_NOT_AVAILABLE Remarks/Usage: None Example: None Unable to add the command. The menu does not exist. The specified user command has not been defined. The command ID assigned to the button
API-646
feSetToolbarCommandVisible
3.16.4.20 feSetToolbarCommandVisible
feSetToolbarCommandVisible
( barName, cmdID, bVisible ) Description: Shows (or hides) a specified command on a toolbar or menu Input: STRING barName INT4 cmdID BOOLEAN bVisible Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to find the specified command. The title of the toolbar where the command button is found. Specify an empty string () to show or hide the command on all toolbars and the menu. The ID of the command to show or hide. True=Show the command, False=Hide
feSetToolbarSeparator
API-647
3.16.4.21 feSetToolbarSeparator
feSetToolbarSeparator
( barName, cmdID, bAddSep ) Description: Adds or removes a separator from before a command or menu on a toolbar. Input: STRING barName INT4 cmdID BOOLEAN bAddSep Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to find the specified command. The title of the toolbar where the command button is found. Specify an empty string () to show or hide the command on all toolbars and the menu. The ID of the command or menu to modify the separator True=Add a separator before the command/menu, False=Remove separator
API-648
feSetToolbarCommandTitle
3.16.4.22 feSetToolbarCommandTitle
feSetToolbarCommandTitle
( barName, cmdID, cmdTitle, cmdToolTip, cmdDescription ) Description: Sets the title, tooltip and description of a command on the menu or toolbars Input: STRING barName INT4 cmdID STRING cmdTitle The title of the toolbar where the command button is found. Specify an empty string () to set the titles for the command on all toolbars and the menu. The ID of the command to update Sets the title of the command. The title is the text shown on the toolbar or menu. Specify an empty string () if you do not want to update the command title. Sets the tooltip for the command. The tooltip is the text shown in the popup when you leave your mouse pointing at the command. Specify an empty string () if you do not want to update the command tooltip. Sets the description for the command. The description is the one-line help text shown in the status bar when you point your mouse at the command. Specify an empty string () if you do not want to update the command description.
STRING cmdToolTip
STRING cmdDescription
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to find the specified command.
feSetToolbarCommandBitmap
API-649
3.16.4.23 feSetToolbarCommandBitmap
feSetToolbarCommandBitmap
( cmdID, cmdBitmap ) Description: Sets the icon for a command on the menu or toolbar Input: INT4 cmdID STRING cmdBitmap Output: None Return Code: FE_FAIL FE_NOT_AVAILABLE Remarks/Usage: The Bitmap file that you specify must be created following very specific guidelines, or this method will not work properly - possibly resulting in FEMAP crashing. The bitmap file must contain a single 16x16 pixel image. Other sizes are not supported. If you want part of the bitmap to be transparent, set those pixels to RGB=(192,192,192) - light gray. This means that you can not use this color in your image - it will be replaced by the appropriate background color. Example: None Unable to find the specified command. Unable to access the bitmap file specified. The ID of the command to update The full pathname to a Windows Bitmap file that is used for the command icon.
API-650
feSaveToolbarLayout
3.16.4.24 feSaveToolbarLayout
feSaveToolbarLayout
( fName ) Description: Saves the current toolbar and menu definition and layout to a file for later use. Input: STRING fName Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to save the layout The full pathname of the file to create (normally with a .tbr extension)
feLoadToolbarLayout
API-651
3.16.4.25 feLoadToolbarLayout
feLoadToolbarLayout
( fName ) Description: Loads a toolbar and menu definition and layout from a file Input: STRING fName Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to load the layout The full pathname of the file to load, that was either created with feSaveToolbarLayout or through File->Preferences
API-652
feAppRegisterAddIn
feAppRegisterAddIn
( register, windowID, messageID, tile, location ) Description: Registers an add-in application with FEMAP. Input: BOOL register INT4 windowID INT4 messageID BOOL tile INT4 location Output: None Return Code: None Remarks/Usage: Usually you will want to specify the same handle for windowID and messageID - unless you want some other window than your main window to receive FEMAP event messages. This method is obsolete, and is included only for compatibility with existing applications. Any new applications should use feAppRegisterAddInPane, and old applications should be converted as soon as possible. Example: None Set to True to register a new application, or False to unregister an add-in that is about to close. The handle to the add-in application main window/form. The handle to the add-in application window that is to receive event messages. This must be a window that has a message loop. Not used Not used
feAppRegisterAddInPane
API-653
3.16.5.2 feAppRegisterAddInPane
feAppRegisterAddInPane
( register, windowID, messageID, bPreventClose, bPreventHide, location, neighborID ) Description: Registers an add-in application with FEMAP. Input: BOOL register INT4 windowID INT4 messageID Set to True to register a new application, or False to unregister an add-in that is about to close. The handle to the add-in application main window/form. The handle to the add-in application window that is to receive event messages. This must be a window that has a message loop. If True, the pane will not include the X in the title bar to allow users to close the addin. If you set this option, you must provide some other method to allow users to close your application. If True, the pane will not include the pin in the title bar to allow the window to be collapsed to a tab. 0 - floating window, 1 - dock left, 2 - dock right, 3 - dock top, 4 dock bottom 0-femap main window, 1-Message Pane, 2-Model Info Tree Pane, 3Entity Editor Pane, 4-Data Table Pane, otherwise the handle to an existing add-in window.
BOOL bPreventClose
Usually you will want to specify the same handle for windowID and messageID - unless you want some other window than your main window to receive FEMAP event messages. The window identified by neighborID is used in conjunction with the location you specify to determine where the window is docked and how it is sized. For example if you specify location=3 and neighborID=1, then your window will be placed at the top of the message pane. If your add-in contains a menu, you may need to use feAppRegisterAddInPaneWithFrame to get the menu to appear. Example: None
API-654
feAppRegisterAddInPaneWithFrame
3.16.5.3 feAppRegisterAddInPaneWithFrame
feAppRegisterAddInPaneWithFrame
( register, windowID, messageID, bPreventClose, bPreventHide, location, neighborID ) Description: Registers an add-in application with FEMAP. Input: BOOL register INT4 windowID INT4 messageID Set to True to register a new application, or False to unregister an add-in that is about to close. The handle to the add-in application main window/form. The handle to the add-in application window that is to receive event messages. This must be a window that has a message loop. If True, the pane will not include the X in the title bar to allow users to close the addin. If you set this option, you must provide some other method to allow users to close your application. If True, the pane will not include the pin in the title bar to allow the window to be collapsed to a tab. 0 - floating window, 1 - dock left, 2 - dock right, 3 - dock top, 4 dock bottom 0-femap main window, 1-Message Pane, 2-Model Info Tree Pane, 3Entity Editor Pane, 4-Data Table Pane, otherwise the handle to an existing add-in window.
BOOL bPreventClose
This method is essentially the same as feAppRegisterAddInPane, however it does not modify the window style of the window being added. This has both positive and negative effects. On the positive side, it allows some programs to be added that contain menus that disappear if you used feAppRegisterAddInPane. However, it also leaves window borders and forces you to do more in your add-in application to make sure sizes do not change and that your windows do not accidentally move or close. If you allow this and do not fully manage it, you can end up with a pane that contains only part of your application, or nothing. So, unless you absolutely need to keep menus or frames, use feAppRegisterAddInPane instead. Example: None
feAppEmbed
API-655
3.16.5.4 feAppEmbed
feAppEmbed
( windowID, x, y, cx, cy ) Description: Embeds the FEMAP window(s) into another application Input: INT4 windowID INT4 x INT4 y INT4 cx INT4 cy Output: None Return Code: None Remarks/Usage: This method is normally used with FEMAP in a non-visible state. In that case, FEMAP becomes visible, and is embedded (parented) into the window you specify - normally the main window of your application. You may call this method multiple times to update the window where the windows are embedded, or to change the embedded region. Refer to Embedding FEMAP in your application on page 75 for more information. Example: None The handle to your application main window/form, or any other window where you want the FEMAP window displayed. The coordinates of the upper left corner of the embedded window(s). These are specified in the client coordinates of the parent window specified by windowID The horizontal and vertical size of the embedded window(s)
API-656
feAppBringToTop
3.16.5.5 feAppBringToTop
feAppBringToTop
( toTop, underWindow ) Description: Allows you to position the FEMAP window on top of, or under other windows. Input: BOOL toTop If True, the window is moved forward in the window list. If False, it is moved to the back of the window list, under all other windows. Only used if toTop=True. If you want to move the window on top of all other windows, set this to 0. If you want to move it forward, but leave it behind another window, specify that window handle in this field.
INT4 underWindow
feAppPosition
API-657
3.16.5.6 feAppPosition
feAppPosition
( move, size, x, y, cx, cy ) Description: Allows you to move and size the FEMAP window. Input: BOOL move BOOL size REAL8 x REAL8 y REAL8 cx REAL8 cy Output: None Return Code: None Remarks/Usage: None Example: None If True, the upper left corner of the window is moved to the new location specified by x,y. If True, the window is resized to the size specified by cx,cy. The horizontal location of the upper left corner of the window. Specified as a percent of the total screen size. The vertical location of the upper left corner of the window. Specified as a percent of the total screen size. The horizontal size of the window. Specified as a percent of the total screen size. The vertical size of the window. Specified as a percent of the total screen size.
API-658
feAppShowWindow
3.16.5.7 feAppShowWindow
feAppShowWindow
( maximize ) Description: Allows you to minimize and maximize the FEMAP window. Input: BOOL maximize Output: None Return Code: None Remarks/Usage: None Example: None If True, the window will be maximized. If False, it will be minimized to an icon.
feAppVisible
API-659
3.16.5.8 feAppVisible
feAppVisible
( visible ) Description: Makes a FEMAP session that was started with CreateObject visible (or invisible) Input: BOOL visible Output: None Return Code: None Remarks/Usage: This method is required to make FEMAP visible if you started a new session with CreateObject. You can also make an existing session invisible with the appropriate call. You should not call this method with a session where you have embedded graphics or messages windows into your application. Example: None If True, the session becomes visible, if False, invisible
API-660
feAppRegisterMessageHandler
3.16.5.9 feAppRegisterMessageHandler
feAppRegisterMessageHandler
( windowID, x, y, cx, cy, dockedAppearance ) Description: Registers your application to receive all of the text that is sent to the FEMAP Messages window. Input: BOOL register INT4 windowID Output: None Return Code: None Remarks/Usage: This method allows you to capture the FEMAP messages and process them in any way you would like. You can display or modify them in any manner you would like. Refer to Capturing the FEMAP Messages on page 77 for more information. Example: None If True, your application will start receiving messages as they are written to the window. If False, messages will no longer be sent. The handle your applications main window/form, or any other window that you want to receive the message text.
feAppEventCallback
API-661
3.16.5.10 feAppEventCallback
feAppEventCallback
( eventID, callback ) Description: Registers a program to be called when a particular event occurs Input: INT4 eventID The ID of the event to watch. Refer to Section 6.4, "The FEMAP Events" for possible event values. A full path to a FEMAP Program file, Basic program, or any executable that can be run from the operating system command line. Specify callback as a blank (zero length) string to unregister your callback.
STRING callback
Output: None Return Code: FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: This method allows you to execute a particular task when an event occurs without having to implement complicated event handling code. From the time you register the callback, until you unregister it by calling with a blank string, your code will be called every time the event occurs. Only one callback can be registered per event. You can simply call this method with a different file for the same event to switch callbacks. If the event that your callback processes uses the lParam value (like FEVENT_COMMAND), you can access it from your callback routine by using EventLParam described in Section 3.3.2, "Global Integer Properties" Example: None You tried to unregister the callback for an event which was not registered Unable to register callback.
API-662
feAppLock
feAppLock
( void ) Description: Locks the FEMAP user interface. Input: None Output: None Return Code: INT4 lock_count Remarks/Usage: This method locks the user interface so that the user cannot pick any commands from the FEMAP menus or toolbars. Some aspects of the FEMAP user interface (such as docking panes) will still remain active - there is no way to deactivate those, however they can be hidden. Add-in applications are active. When FEMAP is locked, the cursor is changed to be an hourglass with a lock. You must call feAppUnlock before FEMAP will again be active. Example: None The lock count after this call. Will be nonzero if the interface was locked.
feAppUnlock
API-663
3.16.6.2 feAppUnlock
feAppUnlock
( void ) Description: Unlocks the FEMAP user interface. Input: None Output: None Return Code: INT4 lock_count Remarks/Usage: This method unlocks the user interface, after a call to feAppLock, so that the user can again use the FEMAP commands. It changes the cursor back to the standard FEMAP cursors. Actually, feAppLock increases a lock count, so if it has been called multiple times, then feAppUnlock must be called an equal number of times before the user interface will be unlocked. There is no harm in calling feAppUnlock extra times, or even if feAppLock was never called. Example: None The number of locks remaining after this call. Will be 0 if the user interface was actually unlocked.
API-664
feAppLockExit
3.16.6.3 feAppLockExit
feAppLockExit
( void ) Description: Locks the FEMAP session so that a user can not exit. Input: None Output: None Return Code: INT4 lock_count Remarks/Usage: This method locks the session so that the user cannot exit using the File->Exit command, or any of the normal system application close methods. This does not prevent the FEMAP process from being accidentally or intentionally terminated using Task Manager or other approaches. Example: None The lock count after this call. Will be nonzero if the exit was locked.
feAppUnlockExit
API-665
3.16.6.4 feAppUnlockExit
feAppUnlockExit
( void ) Description: Unlocks the FEMAP session so that the user can exit. Input: None Output: None Return Code: INT4 lock_count Remarks/Usage: This method unlocks the session, after a call to feAppLockExit, so that the user can again exit FEMAP. Actually, feAppLockExit increases a lock count, so if it has been called multiple times, then feAppUnlockExit must be called an equal number of times before exit will be unlocked. There is no harm in calling feAppUnlockExit extra times, or even if feAppLockExit was never called. Example: None The number of locks remaining after this call. Will be 0 if the session was actually unlocked.
API-666
feAppLockModel
3.16.6.5 feAppLockModel
feAppLockModel
( void ) Description: Locks the FEMAP session so that a user can not start or open a different model. Input: None Output: None Return Code: INT4 lock_count Remarks/Usage: This method locks the session so that the user cannot change to a new model using either the File->New or File->Open commands. Example: None The lock count after this call. Will be nonzero if the exit was locked.
feAppUnlockModel
API-667
3.16.6.6 feAppUnlockModel
feAppUnlockModel
( void ) Description: Unlocks the FEMAP session so that the user can start or open a new model. Input: None Output: None Return Code: INT4 lock_count Remarks/Usage: This method unlocks the session, after a call to feAppLockModel, so that the user can again start or open a different model. Actually, feAppLockModel increases a lock count, so if it has been called multiple times, then feAppUnlockModel must be called an equal number of times before the model will be unlocked. There is no harm in calling feAppUnlockModel extra times, or even if feAppLockModel was never called. Example: None The number of locks remaining after this call. Will be 0 if the session was actually unlocked.
API-668
feAppLockDraw
3.16.6.7 feAppLockDraw
feAppLockDraw
( void ) Description: Locks the FEMAP session so that redraws of the graphics windows do not occur. Input: None Output: None Return Code: INT4 lock_count Remarks/Usage: This method locks the session so that redraws will not occur - even if you explicitly call API functions that cause redraws. Calling this function can improve the performance of other API functions since the on-screen graphics do not need to be updated, however when you are done with your processing, you must call feAppUnlockDraw, and then call feViewRedraw or feViewRegenerate. Example: None The lock count after this call. Will be nonzero if the exit was locked.
feAppUnlockDraw
API-669
3.16.6.8 feAppUnlockDraw
feAppUnlockDraw
( void ) Description: Unlocks the FEMAP session so that redraws can occur in the graphics window. Input: None Output: None Return Code: INT4 lock_count Remarks/Usage: This method unlocks drawing, after a call to feAppLockDraw, so that redraws can again be done. Actually, feAppLockDraw increases a lock count, so if it has been called multiple times, then feAppUnlockDraw must be called an equal number of times before drawing will be unlocked. There is no harm in calling feAppUnlockDraw extra times, or even if feAppLockDraw was never called. Example: None The number of locks remaining after this call. Will be 0 if the session was actually unlocked.
API-670
feAppStatusRedraw
feAppStatusRedraw
( void ) Description: Redraws the Status bar. Input: None Output: None Return Code: None Remarks/Usage: Simply redraws the Status bar to reflect any changes that have taken place - for example creation or deletion of nodes or elements. Example: None
feAppStatusShow
API-671
3.16.7.2 feAppStatusShow
feAppStatusShow
( enable, max_status ) Description: Enables or disables the status tracker inside the Status bar. Input: BOOL enable INT4 max_status Output: None Return Code: None Remarks/Usage: You must call feAppStatusShow( False, ...) after you are done with the status tracker to remove it from the display. Example: None Set to True to enable/show the status tracker. Set to False to remove it. The value that you will use as 100% complete when sending feAppStatusUpdate commands.
API-672
feAppStatusUpdate
3.16.7.3 feAppStatusUpdate
feAppStatusUpdate
( current_status ) Description: Updates the status tracker to the specified level of completeness. Input: The current completion value. This should be a number that is between 0, and the value you specified as max_status in the feAppStatusShow method. When you specify current_status=max_status, the status tracker will be drawn as fully complete.
INT4 current_status
Output: None Return Code: None Remarks/Usage: Although it is normal to send increasing values of current_status, starting at 0, and proceeding toward max_status, there is no requirement to do so. current_status values can be sent in any order. Example: None
feAppMessage
API-673
feAppMessage
( color, message ) Description: Writes a message to the Messages and Lists window. Input: INT4 color STRING message Output: None Return Code: None Remarks/Usage: This message is only written to the Message Window, regardless of the location (or locations) that is currently specified in the listing destination. Example: None The color/status of the message to write: 0=Normal, 1=Highlight, 2=Warning, 3=Error. The text of the message to write. Must be less than 160 characters.
API-674
feAppMessageStartListing
3.16.8.2 feAppMessageStartListing
feAppMessageStartListing
() Description: Begins a listing to the active listing destinations Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this function initializes Listing Mode in the Message window. This means that text will appear in the Listing font - typically fixed pitch. It also means that the text will be written to whatever destinations are selected - Message Window, File and/or Printer. Finally it means that text written to the Message Window will not appear until you call feAppMessageEndListing(). Between these two calls redrawing of the Message Window is disabled to improve the speed of writing large blocks of text. NOTE: You MUST call feAppMessageEndListing() after your last call to feAppMessage(), so that the Message Window display is turned back on. If you are using the Printer as a destination, all text that is written between your call to feAppMessageStartListing() and feAppMessageEndListing() is sent to the printer as a single job when you call feAppMessageEndListing(). Example: This example writes all nodal coordinates in a listing. Sub Main Dim App As femap.model Set App = feFemap() Dim n As femap.Node Set n = App.feNode App.feAppMessageStartListing() App.feAppMessage( FCM_NORMAL, "Nodal Coordinates" ) While n.Next() App.feAppMessage( FCM_NORMAL, Str$(n.ID) + " xyz=" + _ Str$(n.x) + " " + Str$(n.y) + " " + Str$(n.z) ) Wend App.feAppMessageEndListing() End Sub Unable to begin listing - no need to call feAppMessageEndListing()
feAppMessageEndListing
API-675
3.16.8.3 feAppMessageEndListing
feAppMessageEndListing
() Description: Ends a listing that was started by feAppMessageStartListing Input: None Output: None Return Code: None Remarks/Usage: NOTE: You MUST call feAppMessageEndListing() after your last call to feAppMessage(), so that the Message Window display is turned back on. If you are using the Printer as a destination, all text that is written between your call to feAppMessageStartListing() and feAppMessageEndListing() is sent to the printer as a single job when you call feAppMessageEndListing(). Example:
API-676
feFormatReal
feFormatReal
( dValue, nWidth, nSigFig, nFormat, strValue ) Description: Formats a real number into a text string using the options used internally by FEMAP Input: REAL8 dValue INT4 nWidth INT4 nSigFig INT4 nFormat Output: CHAR strValue Return Code: None Remarks/Usage: None Example: None The text string containing the formatted real number The real value to format The overall width of the text string to produce The number of significant figures to attempt to format. Must be able to fit within the specified width The formatting method to use 0=Normal, 1=Force Exponential, 2=Nastran
feTruncateReal
API-677
3.16.9.2 feFormatReal
feTruncateReal
( dValue, nWidth, nSigFig, nFormat, truncValue ) Description: Truncates a real number to the precision of a formatted text string. Input: REAL8 dValue INT4 nWidth INT4 nSigFig INT4 nFormat Output: REAL8 truncValue Return Code: None Remarks/Usage: This is the same as calling feFormatReal() and then parsing the resulting text string into a new real variable. Example: None The precision truncated version of the formatted real number The real value to format The overall width of the text string to produce The number of significant figures to attempt to format. Must be able to fit within the specified width The formatting method to use 0=Normal, 1=Force Exponential, 2=Nastran
API-678
feLicenseExpiration
feLicenseExpiration
( nDays ) Description: Returns the number of days until your current license expires Input: None Output: INT4 nDays Return Code: None Remarks/Usage: nDays is returned as -1 for perpetual licenses. Example: None The number of days until the license expires
feLicenseMethod
API-679
3.16.10.2 feLicenseMethod
feLicenseMethod
( nLicenseType ) Description: Returns the method of licensing currently being used Input: None Output: The type of licensing currently being used 0 = None, this means that licensing has somehow failed 1 = Dongle 2 = Node/Curve limited Demo 4 = FLEXlm-based Network Licensing 5 = API-only Licensing
INT4 nLicenseType
Return Code: FE_FAIL FE_SECURITY Remarks/Usage: None Example: None Licensing information is not valid Licensing method is valid, but currently exceeding some limitation on the license (like a node limit)
API-680
feLicenseIsAvailable
3.16.10.3 feLicenseIsAvailable
feLicenseIsAvailable
( nFeature ) Description: Indicates whether a specific feature is licensed with this copy of FEMAP Input: The feature to check licensing status. 0 = NX Nastran Basic 1 = NX Nastran Nonlinear 2 = NX Nastran Dynamics 3 = NX Nastran DMAP 4 = NX Nastran Superelements 5 = NX Nastran Aero Basic 7 = NX Nastran Optimization 8 = NX Nastran Advanced Nonlinear 10 = NX Nastran RotorDynamics 11 = NX Nastran Advanced Nonlinear Explicit 15 = FEMAP Thermal 16 = FEMAP Advanced Thermal 17 = FEMAP Flow 18 = FEMAP Structural Analysis Toolkit
INT4 nFeature
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Feature is not licensed
feRunCommand
API-681
3.16.10.4 feRunCommand
feRunCommand
( nCmdID, bWaitForCompletion ) Description: Runs a FEMAP command Input: INT4 nCmdID BOOL bWaitForCompletion Output: None Return Code: None Remarks/Usage: Command IDs can be found by calling various functions defined earlier in this section, like feGetMenuCommand( ). This method provides no means for automatically answering dialog boxes that are displayed by the selected command - the command is run interactively. Example: None The ID of the command to run If True, this method only returns when the command is finished. If False, it returns immediately.
API-682
feAppVersion
3.16.10.5 feAppVersion
feAppVersion
( void ) Description: Returns the version of FEMAP Input: None Output: None Return Code: INT4 version Remarks/Usage: None Example: None The version of FEMAP specified as an integer. This is 100 times the version number. For Example, v9.3.1 will return 931, v10.0 will return 1000.
feAppVersion
API-683
API-684
3.17 User Graphics Methods
User Graphics Methods include the following topics:
Section 3.17.1, "Managing User Graphics Data" Section 3.17.2, "Displaying User Graphics Data"
API-685
3.17.1 Managing User Graphics Data
User Graphics data allows you to create additional points, lines, arrows, and polygons (triangles and quads) that can be displayed with your model. User Graphics data has no interaction with your other model data, it is simply used for display. Just like many other types of data in FEMAP (loads, constraints...), User Graphics data is stored in sets. You can create as many different sets of data in you model as you want (with the normal ID limits). Simply creating the data however does not make it visible in your graphics windows. Graphics Data only becomes visible when its set is selected, and only one set can be selected at a time. This gives you the flexibility of creating many different graphical objects, each in its own set, and then quickly switching between them by selecting the appropriate set. User Graphics data can be managed either through these methods, or using the various User Graphics Entity objects. These methods provide a bit simpler interface, the entity objects provide more overall capability. The following methods allow you to define and manage your graphics data. Selecting the data for display is described in the next section.
API-686
feGFXLoad
3.17.1.1 feGFXLoad
feGFXLoad
( nSetID, nxyz, xyz, npoly, poly, color, edgecolor, symbol ) Description: Creates User Graphics Data containing points, lines, triangles and/or quads Input: INT4 nSetID INT4 nxyz REAL8 xyz[0..(3*nxyz)-1] The User Graphics Set to create The number of locations specified in the coordinate table (xyz) The coordinates used to define the endpoints/corners of the graphics data. This data is referenced by the entries in poly. All values must be in global rectangular coordinates. The number of entries in the poly array This array contains 4 entries for each graphics entity to be created. The values must be the index in the xyz array of the coordinates for that endpoint/corner. For points, only the first of the four entries is used. For lines, the first two are used. For triangles, the first three are used. ALL UNUSED ENTRIES MUST BE SET TO -1 (that is what indicates which shape you are describing). The array must contain data in the following order (Entity1Corner1, Entity1Corner2, Entity1Corner3, Entity1Corner4, Entity2Corner1, Entity2Corner2...). Note that the first coordinate in the xyz array is index 0, not 1. The color of the entities created. For triangles and quads this is the fillcolor Only used for triangles and quads. The color of the edges. Only used for points. The symbol to be displayed for points.
INT4 color INT4 edgecolor INT4 symbol Output: None Return Code: FE_FAIL FE_BAD_DATA Remarks/Usage: None Example:
Unable to allocate memory or access the data provided. One of the indices in poly is out of the range provided in xyz
feGFXLoad
API-687
feGFXLoad
( nSetID, nxyz, xyz, npoly, poly, color, edgecolor, symbol ) Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim xyz(2,10000) As Double Dim poly(3,10000) As Long Dim Set Dim Set n n e e As femap.Node = App.feNode As femap.Elem = App.feElem
' Grab the nodal coordinates, but offset by 1 in the Z direction While (n.Next()) xyz(0,n.ID) = n.x xyz(1,n.ID) = n.y xyz(2,n.ID) = n.z + 1.0 Wend ' Build a line/tri/quad for each element we find nPoly = 0 While (e.Next()) Select Case e.topology Case FTO_LINE2 poly(0,nPoly) = e.Node(0) poly(1,nPoly) = e.Node(1) poly(2,nPoly) = -1 poly(3,nPoly) = -1 Case FTO_TRIA3 poly(0,nPoly) = e.Node(0) poly(1,nPoly) = e.Node(1) poly(2,nPoly) = e.Node(2) poly(3,nPoly) = -1 Case FTO_QUAD4 poly(0,nPoly) = e.Node(0) poly(1,nPoly) = e.Node(1) poly(2,nPoly) = e.Node(2) poly(3,nPoly) = e.Node(3) End Select nPoly = nPoly + 1 Wend ' Load the graphics data rc = App.feGFXLoad( 1, 10000, xyz, nPoly, poly, FCL_RED, FCL_ORANGE, GPS_DIAMOND ) ' Select and draw the graphics data rc = App.feGFXSelect( 1, True, True ) End Sub
API-688
feGFXDelete
3.17.1.2 feGFXDelete
feGFXDelete
( bAllSets, nSetID ) Description: Deletes all User Graphics entities (points, lines, arrows, triangles and quads) in one or more sets Input: BOOL bAllSets INT4 nSetID Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method deletes the User Graphics data from your model, however if User Graphics were selected for display, they will continue to be displayed even after calling this method (even though the underlying data has been deleted). You must call "feGFXReset" (Section 3.17.2.3) to remove the graphics from the display. Example: None Unable to delete entities If True, all entities, in all sets are deleted. If False, then all entities in Set nSetID are deleted The setID to delete if bAllSets=False
feGFXSelect
API-689
feGFXSelect
( nSetID, bEnableAll, bRedraw ) Description: Selects a predefined set of User Graphics entities for display. Input: INT4 nSetID BOOL bEnableAll The setID to be selected for display If True, then display of User Graphics will be enabled for all active views. If False, you must subsequently call "feGFXEnableView" (Section 3.17.2.2) to enable display for the views you want. Once selected User Graphics will only be displayed after a Redraw. If True, this forces an immediate redraw. Otherwise you will have to redraw later to see your graphics.
BOOL bRedraw Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
API-690
feGFXEnableView
3.17.2.2 feGFXEnableView
feGFXEnableView
( bEnableAll, nVuID ) Description: Enables display of User Graphics in one or more selected views. Input: BOOL bEnableAll INT4 nVuID Output: None Return Code: FE_FAIL Remarks/Usage: This method is only needed if you only want to enable display of User Graphics in certain views. To display in every view, simply specify bEnableAll=True when you call "feGFXSelect" (Section 3.17.2.1) to select the data to display. Example: None Unable to load selected set. If True, then display of User Graphics will be enabled for all active views. If False, only the view specified by nVuID will be enabled. The ID of the View to enable. Only used if bEnableAll=False
feGFXReset
API-691
3.17.2.3 feGFXReset
feGFXReset
( void ) Description: Disables display of User Graphics in all views. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method resets the display of User Graphics. It does not delete the data from your model. You must call "feGFXDelete" (Section 3.17.1.2) or one of the User Graphics Entity delete methods to delete the data. After calling this method, you can redisplay the data by calling "feGFXSelect" (Section 3.17.2.1). Example: None User Graphics not reset.
API-692
feGFXReset
API-693
3.18 File Utility Methods
File Utility Methods include:
API-694
feFileGetName
feFileExecute
API-695
API-696
feFileProgramRun
Refer to the Section later in this document on Program Files for more information on the syntax required. When you call this function, the program file is started, however the function returns immediately, it can not wait for the program file to complete. Refer to the feFileProgramRunning( ) method, and the chapter on events for possible methods for determining when a program file finishes. Example: None
feFileProgramRunning
API-697
API-698
feFileCurrentDirectory
API-699
All of the following methods are available from the FEMAP application object, and return the object that they create.
DataTable Objects
Method feDataTable (Section 4.2, "ReadFile Objects") Description Creates a DataTable Object Other Methods
ReadFile Objects
Method feRead (Section 4.2, "ReadFile Objects") Description Creates a ReadFile Object Other Methods
Selector Object
Method feSelector (Section 4.3, "Selector Object") Description Creates a Selector Object Other Methods
API-700
Set Object
Method feSet (Section 4.4, "Set Objects") Description Creates a Set Object Other Methods Group.List
Sort Object
Method feSort (Section 4.5, "Sort Objects") Description Creates a Sort Object Other Methods
API-701
API-702
4.1 DataTable Object
The DataTable object provides access to the functionality of the Data Table in your model. It is not a model entity. Use the feDataTable method of the FEMAP Application object to access the DataTable object.
BOOL VisibleRowsOnly
BOOL VisibleColsOnly
FindRow
API-703
FindRow
( ModelID, SetID, ID ) Description: This method returns the index of the row that matches your search criteria. Input: INT4 ModelID The ID of the Model to match. ( 0 = Any Model ). This is only necessary if you want to load data from multiple models in the same table. The SetID of the entity to match ( 0 = Any SetID ). This is not necessary for most model entities (like nodes, elements, properties...) which all have SetID = 1 The ID of the entity to match ( 0 = Any ID )
The index of the row in the Data Table that matches your criteria. If no row matches rowIndex will be negative.
This function can be used if you do not want to keep track of row indices. Because it returns the row index as the Return Code, this method can be used directly in other calls as shown in the example. It will always return the appropriate matching index, regardless of the setting of VisibleRowsOnly. Example: This example hides the row that contains the entity with ID = 3 Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim r As femap.DataTable Set r = App.feDataTable r.SetRowVisible( r.FindRow(0,0,3), False ) End Sub
API-704
GetRowInfo
4.1.3.2 GetRowInfo
GetRowInfo
( numRows, ModelID, SetID, ID ) Description: Returns information about all the rows in the table. Input: None Output: INT4 numRows INT4 ModelID[0..numRows-1] INT4 SetID[0..numRows-1] INT4 ID[0..numRows-1] Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: This method can be used to retrieve arrays that indicate all of the entities in the Data Table. If VisibleRowsOnly is True, only information about visible rows is returned. Example: The Data Table is not currently displayed. The Data Table does not contain any data. Can not allocate memory to retrieve info from the Data Table The number of entries in the ModelID, SetID and ID arrays The ID of the Model associated with the entity in each row. The SetID of the entity in the row The ID of the entity in the row.
GetRowVisible
API-705
4.1.3.3 GetRowVisible
GetRowVisible
( nRow, bVisible ) Description: Returns the visibility of a row in the table. Input: INT4 nRow Output: BOOL bVisible Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified row does not exist True if the row is visible, False if hidden The index of the row to query
API-706
SetRowVisible
4.1.3.4 SetRowVisible
SetRowVisible
( nRowOrAll, bVisible ) Description: Sets one or all rows visible or hidden Input: INT4 nRowOrAll BOOL bVisible Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified row does not exist The index of the row to update (-1=All Rows) True to make the row(s) visible, or False to hide them.
FindColumn
API-707
FindColumn
( colTitle ) Description: This method returns the index of the column that matches your search criteria. Input: STRING colTitle Output: None Return Code: colIndex Remarks/Usage: This function can be used if you do not want to keep track of column indices. Because it returns the column index as the Return Code, this method can be used directly in other calls as shown in the example. It will always return the appropriate matching index, regardless of the setting of VisibleColsOnly. Example: This example hides the column that contains the title "Topology" Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim r As femap.DataTable Set r = App.feDataTable r.SetColumnVisible( r.FindColumn("Topology", False ) End Sub The index of the column in the Data Table that matches your criteria. If no column matches colIndex will be negative. The title of the column to locate
API-708
GetColumnInfo
4.1.4.2 GetColumnInfo
GetColumnInfo
( numColumns, colType, colTitle ) Description: Returns information about all the columns in the table. Input: None Output: INT4 numColumns INT4 colType[0..numColumns1] STRING colTitle[0..numColumns-1] Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: This method can be used to retrieve arrays that indicate all of the entities in the Data Table. If VisibleColsOnly is True, only information about visible columns is returned. Example: The Data Table is not currently displayed. The Data Table does not contain any data. Can not allocate memory to retrieve info from the Data Table The number of entries in the colType and colTitle arrays A value indicating the type of data in the column. The titles of the columns
GetColumnVisible
API-709
4.1.4.3 GetColumnVisible
GetColumnVisible
( nColumn, bVisible ) Description: Returns the visibility of a column in the table. Input: INT4 nColumn Output: BOOL bVisible Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified column does not exist True if the column is visible, False if hidden The index of the column to query.
API-710
SetColumnVisible
4.1.4.4 SetColumnVisible
SetColumnVisible
( nColumnOrAll, bVisible ) Description: Sets one or all columns visible or hidden Input: INT4 nColumnOrAll BOOL bVisible Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified column does not exist The index of the column to update (-1=All Columns) True to make the column(s) visible, or False to hide them.
GetColumnWidth
API-711
4.1.4.5 GetColumnWidth
GetColumnWidth
( nColumn, nWidth ) Description: Returns the width of a column in the table. Input: INT4 nColumn Output: INT4 nWidth Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified column does not exist The width of the column in pixels The index of the column to query.
API-712
SetColumnWidth
4.1.4.6 SetColumnWidth
SetColumnWidth
( nColumnOrAll, nWidth ) Description: Sets the width of one or all columns Input: INT4 nColumnOrAll INT4 nWidth Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified column does not exist The index of the column to update (-1=All Columns) The width of the columns in pixels
GetColumnTitle
API-713
4.1.4.7 GetColumnTitle
GetColumnTitle
( nColumn, colTitle ) Description: Returns the title of a column in the table. Input: INT4 nColumn Output: STRING colTitle Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified column does not exist The title of the column The index of the column to query.
API-714
SetColumnTitle
4.1.4.8 SetColumnTitle
SetColumnTitle
( nColumn, colTitle ) Description: Sets the title for a column Input: INT4 nColumn STRING colTitle Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified column does not exist The index of the column to update The title of the column
SetColumnPosition
API-715
4.1.4.9 SetColumnPosition
SetColumnPosition
( nColumn, nNewIndex, bAfter ) Description: Moves the display location of a column in the Data Table Input: INT4 nColumn INT4 nNewIndex BOOL bAfter Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST FE_FAIL Remarks/Usage: This method will automatically make the specified column that you are moving visible - even if it is not currently. Example: None The Data Table is not currently displayed. The specified column does not exist Not able to move column to the requested location The index of the column to update The index of the new location in the table. The column is moved to the left of this location. If True, the nColumn is placed after the nNewIndex column, otherwise it is placed before that column
API-716
SetColumnAlignment
4.1.4.10 SetColumnAlignment
SetColumnAlignment
( nColumn, nAlign ) Description: Updates the alignment of data in the selected column(s) Input: INT4 nColumnOrAll INT4 nAlign Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. The specified column does not exist The index of the column to update ( -1 = All Columns ) The data alignment (0=Left, 1=Center, 2=Right)
GetColumnValue
API-717
GetColumnValue
( nColumn, numRowsOrAll, Rows, numData, ColumnData ) Description: This method returns data from selected rows in a column Input: INT4 nColumn INT4 numRowsOrAll INT4 Rows[0..numRowsOrAll1] Output: INT4 numData VARIANT ColumnData Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST FE_NO_MEMORY FE_BAD_TYPE Remarks/Usage: Typically numData will be the same as numRowsOrAll (if numRowsOrAll is not -1), unless some of the rows you request are invalid. The GetColumnText method is similar, but always returns the data as text strings. Example: The Data Table is not currently displayed. The Data Table does not contain any data. Can not allocate memory to retrieve info from the Data Table The selected column contains a type of data that is not supported by this method. The number of items returned in ColumnData The data recovered from Column nColumn and the selected rows. Depending on the type of data contained in the column, this could be an array of booleans, integers, doubles or strings. The index of a column to query The number of entries in the Rows array, or -1 to retrieve data from all rows The indices of the rows to query
API-718
GetColumnValue
( nColumn, numRowsOrAll, Rows, numData, ColumnData ) This example retrieves the Property ID from Rows 4, 1, and 0 of the Data table Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim r As femap.DataTable Set r = App.feDataTable Dim ro(3) As Long ro(0) = 4 ro(1) = 1 ro(2) = 0 Dim n As Long Dim c As Variant r.GetColumnValue( r.FindColumn("Prop ID"), 3, ro, n, c ) End Sub
GetColumnText
API-719
4.1.5.2 GetColumnText
GetColumnText
( nColumn, numRowsOrAll, Rows, numData, ColumnText ) Description: This method returns data from selected rows in a column Input: INT4 nColumn INT4 numRowsOrAll INT4 Rows[0..numRowsOrAll1] Output: INT4 numData STRING ColumnText[0..numData-1] Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST FE_NO_MEMORY FE_BAD_TYPE Remarks/Usage: This method is identical to GetColumnValue, except that it always returns the data as a text string. Example: None The Data Table is not currently displayed. The Data Table does not contain any data. Can not allocate memory to retrieve info from the Data Table The selected column contains a type of data that is not supported by this method. The number of items returned in ColumnData The data recovered from Column nColumn and the selected rows. This method always retrieves the text that is displayed, rather than numeric values. For columns displaying check boxes, the string returned is 1 if the box is on, and 0 if it is off. The index of a column to query The number of entries in the Rows array, or -1 to retrieve data from all rows The indices of the rows to query
API-720
GetRowValues
4.1.5.3 GetRowValues
GetRowValues
( numRowsOrAll, Rows, numData, RowData ) Description: This method returns data from all columns for selected rows Input: INT4 numRowsOrAll INT4 Rows[0..numRowsOrAll1] Output: INT4 numData The number of Columns returned in RowData The data recovered from the selected rows for all columns. The data is returned as an array of Variants, where each variant contains an array of data for the corresponding column. Depending on the type of data contained in the column, this could be an array of booleans, integers, doubles or strings. The number of entries in the Rows array, or -1 to retrieve data from all rows The indices of the rows to query
VARIANT RowData
Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST FE_NO_MEMORY FE_BAD_TYPE Remarks/Usage: The RowData variant that is returned can be accessed as a two-dimensional array, where the first index represents the column, and the second the row ... RowData(column)(row) Example: The Data Table is not currently displayed. The Data Table does not contain any data. Can not allocate memory to retrieve info from the Data Table The selected column contains a type of data that is not supported by this method.
API-721
GetRowValues
( numRowsOrAll, Rows, numData, RowData ) This example retrieves all the data in the table and echoes it to the Message Window Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim r As femap.DataTable Set r = App.feDataTable Dim nd As Long Dim rd As Variant r.GetRowValues( -1, rr, nd, rd ) For i=0 To r.NumberOfRows-1 For c = 0 To nd-1 App.feAppMessage( FCM_NORMAL, "Row "+Str$(i)+" Column "+Str$(c)+" = "+Str$(rd(c)(i)) ) Next c Next i End Sub
API-722
AddColumn
4.1.5.4 AddColumn
AddColumn
( bClear, bHidden, entityType, entitySetID, colTitle, colType, nRows, ID, Value, nNewColumnID ) Description: This method creates a new column in the Data Table and adds data to it. Input: BOOL bClear BOOL bHidden INT4 entityType If True, all previously existing data in the Data Table is deleted. If True, the column is created hidden, if False, the column is visible. The type of entities being shown in the Data Table. This needs to be the same for all columns. For more information on Entity Types refer to the table in Section 3.3.6, "Entity Types". The Set ID associated with these values being added. Can be 0 to match any Set ID or use the default for new rows. The title for the column - must be unique among all existing columns The type of column to create (0=Bool/Check Box, 1=Integer, 2=Real, 3=String). Boolean arrays will create a column that is displayed as Check Boxes (checked on if True). The number of entries in the ID and Value arrays. The entity IDs associated with the data in the corresponding location in Value. If a row with the same ID already exists in the Data Table, the associated Value is assigned to that row. If no row with that ID exists, a new row is created with the current Model ID, the specified entitySetID, and this ID, and the new row is assigned the value. This Variant contains an array with the values to be assigned to the rows selected by the corresponding entity IDs from ID. Depending on the option you specify in colType, the variant must contain either a Boolean, Integer, Double or String array.
INT4 ID[0..nRows-1]
VARIANT Value
Output: The index of the column that was created. This index is always based on the order the column was created, not the visible location, no matter how VisibleColsOnly is set. If VisibleColsOnly=False, this number can be used to access the column.
INT4 nNewColumnID
Return Code: FE_NOT_AVAILABLE FE_SECURITY The Data Table is not currently displayed. The Data Table is locked and can not be updated.
( bClear, bHidden, entityType, entitySetID, colTitle, colType, nRows, ID, Value, nNewColumnID )
AddColumn
( bClear, bHidden, entityType, entitySetID, colTitle, colType, nRows, ID, Value, nNewColumnID ) FE_INVALID FE_FAIL FE_BAD_TYPE Remarks/Usage: This method will automatically create Model ID, Set ID and ID columns in the Data Table if they do not exist - you should never attempt to create these columns yourself. Example: The colTitle is invalid. It is either zero length or matches an existing column. Unable to add column. The Value Array has an invalid type
API-724
AddColumn
( bClear, bHidden, entityType, entitySetID, colTitle, colType, nRows, ID, Value, nNewColumnID ) Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim r As femap.DataTable Set r = App.feDataTable id = Array( 1, 7, 3, 17 ) i = Array( 45, 833, -23, 124 ) x = Array( 1.2, 4.56, 3.987E-6, -0.0023 ) c = Array( True, False, False, True ) t = Array( "Abc", "Title 1", "++ XX ++", "" ) Dim Dim Dim Dim newi newc newx newt As As As As Long Long Long Long
r.AddColumn( True, False, FT_ELEM, 0, "IntCol", FCT_INT, 4, id, i, newi ) r.AddColumn( False, False, FT_ELEM, 0,"Check", FCT_BOOL, 4, id, c, newc ) r.AddColumn( False, False, FT_ELEM, 0,"Column Title ", FCT_DOUBLE, 4, id, x, newx ) r.AddColumn( False, False, FT_ELEM, 0, "Names", FCT_STRING, 4, id, t, newt ) End Sub
UpdateColumnByID
API-725
4.1.5.5 UpdateColumnByID
UpdateColumnByID
( nColumn, entitySetID, colType, nRows, ID, Value ) Description: This method updates a column in the Data Table and adds data to it if selected IDs do not exist. Rows to update are selected by IDs Input: INT4 nColumn INT4 entitySetID INT4 colType INT4 nRows Index of the column to update The Set ID associated with these values being updated. Can be 0 to match any Set ID or use the default for new rows. The type of data being updated (0=Bool/Check Box, 1=Integer, 2=Real, 3=String). The number of entries in the ID and Value arrays. The entity IDs associated with the data in the corresponding location in Value. If a row with the same ID already exists in the Data Table, the associated Value is assigned to that row. If no row with that ID exists, a new row is created with the current Model ID, the specified entitySetID, and this ID, and the new row is assigned the value. This Variant contains an array with the values to be assigned to the rows selected by the corresponding entity IDs from ID. Depending on the option you specify in colType, the variant must contain either a Boolean, Integer, Double or String array.
INT4 ID[0..nRows-1]
VARIANT Value
Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY FE_FAIL FE_BAD_TYPE Remarks/Usage: None Example: None The Data Table is not currently displayed. The Data Table is locked and can not be updated. Unable to update column. The Value Array has an invalid type
API-726
UpdateColumn
4.1.5.6 UpdateColumn
UpdateColumn
( nColumn, colType, nRows, Rows, Value ) Description: This method updates a column in the Data Table. Rows are specified by row indices. Input: INT4 nColumn INT4 colType INT4 nRows INT4 Rows[0..nRows-1] Index of the column to update The type of data being updated (0=Bool/Check Box, 1=Integer, 2=Real, 3=String). The number of entries in the ID and Value arrays. The row indices of the rows to update. This Variant contains an array with the values to be assigned to the rows selected by the corresponding indices from Rows. Depending on the option you specify in colType, the variant must contain either a Boolean, Integer, Double or String array.
VARIANT Value
Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY FE_FAIL FE_BAD_TYPE Remarks/Usage: This method is similar to UpdateColumnByID except that it cannot add additional rows to the table. Example: None The Data Table is not currently displayed. The Data Table is locked and can not be updated. Unable to update column. The Value Array has an invalid type
AddEntityData
API-727
4.1.5.7 AddEntityData
AddEntityData
( bClear, entityType, entitySetID, entityIDSet ) Description: This method adds entity data to the Data Table Input: BOOL bClear INT4 entityType If True, all previously existing data in the Data Table is deleted. The type of entities being added to the Data Table. For more information on Entity Types refer to the table in Section 3.3.6, "Entity Types". The Set ID associated with these values being added. Can be 0 to use the default Set ID. The ID of a Set object that contains the IDs of the entities to add. If entityIDSet is negative, then just a single entity is added whose id is the absolute value of entityIDSet
INT4 entitySetID
INT4 entityIDSet Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY FE_FAIL Remarks/Usage: None Example:
The Data Table is not currently displayed. The Data Table is locked and can not be updated. Unable to add entities
The following routine adds all Plate elements to the Data Table... Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim r As femap.DataTable Set r = App.feDataTable Dim s As femap.Set Set s = App.feSet s.AddRule( FET_L_PLATE, FGD_ELEM_BYTYPE ) r.AddEntityData( True, FT_ELEM, 0, s.ID ) End Sub
API-728
AddOutput
4.1.5.8 AddOutput
AddOutput
( nOutputSet, nOutputVector, nNewColumnID ) Description: This method adds data from an Output Vector to a column in the Data Table Input: INT4 nOutputSet INT4 nOutputVector Output: INT4 nNewColumnID Return Code: FE_NOT_AVAILABLE FE_SECURITY FE_NOT_EXIST FE_FAIL Remarks/Usage: This method provides a simple way to add analysis results to the data table, however the table must be preloaded with the nodes/elements where you want to retrieve the results. Only the specified Output Vector is loaded. There are no options to also include results for other components, plys, corners, etc... The Data Table may contain results from different/multiple models, however it will be loaded with results from the same Output Set/Output Vector in each respective model - there is no way using this method to choose different Output Sets for the different models. Example: The Data Table is not currently displayed, or does not contain rows with Nodes/Elements. The Data Table is locked and can not be updated. The selected Output Set/Output Vector does not exist. Unable to add entities The column ID of the column that is created. The Output Set that contains the data to add. The ID of the Output Vector that contains the data to add.
AddMassProperties
API-729
4.1.5.9 AddMassProperties
AddMassProperties
( void ) Description: Adds mass properties to the existing entities in the table Input: None Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY FE_BAD_TYPE Remarks/Usage: This method simply calls the Add Mass Properties command from the Data Table toolbar. The Data Table must contain one or more Curves, Surfaces, Solids, Elements, Properties or Materials. Example: None The Data Table is not currently displayed. The Data Table is locked and can not be updated. Invalid entity type or no data in the Data Table
API-730
AddElementChecks
4.1.5.10 AddElementChecks
AddElementChecks
( void ) Description: Adds element checks to the existing entities in the table Input: None Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY FE_BAD_TYPE Remarks/Usage: This method simply calls the Add Element Checks command from the Data Table toolbar. The Data Table must contain one or more Elements. Example: None The Data Table is not currently displayed. The Data Table is locked and can not be updated. Invalid entity type or no data in the Data Table
AddMeshAssociativity
API-731
4.1.5.11 AddMeshAssociativity
AddMeshAssociativity
( void ) Description: Adds mesh associativity data to the existing entities in the table Input: None Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY FE_BAD_TYPE Remarks/Usage: This method simply calls the Add Mesh Associativity command from the Data Table toolbar. The Data Table must contain one or more Points, Curves, Surfaces or Solids. Example: None The Data Table is not currently displayed. The Data Table is locked and can not be updated. Invalid entity type or no data in the Data Table
API-732
SetTextColor
4.1.5.12 SetTextColor
SetTextColor
( nColumn, numRows, Rows, nRed, nGreen, nBlue ) Description: Changes the color of the text displayed in one or more rows in a selected column Input: INT4 nColumn INT4 numRows INT4 Rows[0..numRows-1] INT4 nRed INT4 nGreen INT4 nBlue Output: None Return Code: FE_NOT_AVAILABLE FE_FAIL Remarks/Usage: None Example: None The Data Table is not currently displayed. Unable to update Data Table The index of the column to update The number of entries in th Rows array The indices of the rows to update The Red level (0-255) The Green level (0-255) The Blue level (0-255)
SetBackgroundColor
API-733
4.1.5.13 SetBackgroundColor
SetBackgroundColor
( nColumn, numRows, Rows, nRed, nGreen, nBlue ) Description: Changes the color of the background displayed in one or more rows in a selected column Input: INT4 nColumn INT4 numRows INT4 Rows[0..numRows-1] INT4 nRed INT4 nGreen INT4 nBlue Output: None Return Code: FE_NOT_AVAILABLE FE_FAIL Remarks/Usage: None Example: None The Data Table is not currently displayed. Unable to update Data Table The index of the column to update The number of entries in th Rows array The indices of the rows to update The Red level (0-255) The Green level (0-255) The Blue level (0-255)
API-734
AddGroup
AddGroup
( nColumn, bShowInGroupOnly, bSortAscending ) Description: This method updates the Data Table to group by a selected column Input: INT4 nColumn BOOL bShowInGroupOnly BOOL bSortAscending Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: This method can be used multiple times to add additional columns to the grouping order. If a column was already in the grouping order it is moved to the lowest level. Calling this method will automatically show the GroupBy header. You can call ShowGroup to hide it, if necessary. Example: None The Data Table is not currently displayed. The selected column does not exist The index of a column to add to Grouping If True, the column is removed from being visible in the table, and is only visible in grouping and the group headers. If False, the column is still used for grouping, but is also visible in the table. True=Sort in Ascending order, False=Descending order
ClearGroup
API-735
4.1.6.2 ClearGroup
ClearGroup
( void ) Description: This method removes any grouping order Input: None Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed.
API-736
GetGroup
4.1.6.3 GetGroup
GetGroup
( numColumns, Columns ) Description: This method retrieves the indices of all columns used for grouping Input: None Output: INT4 numColumns INT4 Columns[0..numColumns-1] Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST FE_BAD_TYPE Remarks/Usage: None Example: None The Data Table is not currently displayed. No grouping columns exist VisibleColsOnly is True. This method is only available when VisibleColsOnly is False because grouped/sorted columns do not need to be visible. The number of columns in the grouping order The indices of the grouping columns
ShowGroup
API-737
4.1.6.4 ShowGroup
ShowGroup
( bVisible ) Description: This method shows and hides the Group By header Input: BOOL bVisible Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed. True = Show Header, False = Hide Header
API-738
AddSort
AddSort
( nColumn, bSortAscending ) Description: This method updates the Data Table to sort by a selected column Input: INT4 nColumn BOOL bSortAscending Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: This method can be used multiple times to add additional columns to the sorting order. If a column was already in the sorting order it is moved to the lowest level. Example: None The Data Table is not currently displayed. The selected column does not exist The index of a column to sort by True=Sort in Ascending order, False=Descending order
ClearSort
API-739
4.1.7.2 ClearSort
ClearSort
( void ) Description: This method removes any sorting order Input: None Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed.
API-740
4.1.7.3 GetSort
GetSort
GetSort
( numColumns, Columns ) Description: This method retrieves the indices of all columns used for sorting Input: None Output: INT4 numColumns INT4 Columns[0..numColumns-1] Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST FE_BAD_TYPE Remarks/Usage: None Example: None The Data Table is not currently displayed. No sorting columns exist VisibleColsOnly is True. This method is only available when VisibleColsOnly is False because grouped/sorted columns do not need to be visible. The number of columns in the sorting order The indices of the sorting columns
AddSelection
API-741
AddSelection
( numRows, Rows, bSelect ) Description: This method updates the Data Table to select/deselect one or more rows Input: INT4 numRows INT4 Rows[0..numRows-1] BOOL bSelect Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: This method can be used multiple times to add additional rows to the selection. Example: None The Data Table is not currently displayed. The number of entries in the Rows array The indices of the rows to select/deselect True = Select, False = Deselect Rows
API-742
ClearSelection
4.1.8.2 ClearSelection
ClearSelection
( void ) Description: This method removes selection from all rows Input: None Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed.
GetSelection
API-743
4.1.8.3 GetSelection
GetSelection
( numRows, Rows ) Description: This method retrieves the indices of all rows that are selected Input: None Output: INT4 numRows INT4 Rows[0..numRows-1] Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed. The number of rows in the selection The indices of the selected rows
API-744
Lock
Lock
( bLock ) Description: This method Locks or Unlocks the Data Table to allow it to be updated Input: BOOL bLock Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed. True = Lock, False = Unlock the Data Table
Copy
API-745
4.1.9.2 Copy
Copy
( bCopyAll ) Description: This method copies the contents of the Data Table to the clipboard Input: BOOL bCopyAll Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed. True = Copy entire Data Table, False = Copy only selected rows (and header)
API-746
4.1.9.3 Save
Save
Save
( bCopyAll, fName, nFormat ) Description: This method copies the contents of the Data Table to a file. Input: BOOL bCopyAll STRING fName INT4 nFormat Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed. True = Copy entire Data Table, False = Copy only selected rows (and header) The name of the file that you want to create The format that you want to use when creating the file (0=Tab Delimitted Text, 1=Comma-Separated Text, 2=Rich Text Format - RTF)
Clear
API-747
4.1.9.4 Clear
Clear
( void ) Description: This method clears the contents of the Data Table Input: None Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example: None The Data Table is not currently displayed. The Data Table is locked and can not be updated.
API-748
DeleteRows
4.1.9.5 DeleteRows
DeleteRows
( numRows, Rows ) Description: This method deletes specified rows from the Data Table Input: INT4 numRows INT4 Rows[0..numRows-1] Output: None Return Code: FE_NOT_AVAILABLE FE_SECURITY Remarks/Usage: None Example: None The Data Table is not currently displayed. The Data Table is locked and can not be updated. The number of entries in the Rows array The indices of the rows to delete
Show
API-749
4.1.9.6 Show
Show
( bShowAll ) Description: This method shows (draws) the specified contents of the Data Table Input: BOOL bShowAll Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None The Data Table is not currently displayed. True = Show all visible Rows, False = Show only selected rows
API-750
4.1.9.7 Print
Print
( void ) Description: This method prints the visible contents of the Data Table Input: None Output: None Return Code: FE_NOT_AVAILABLE FE_NOT_EXIST Remarks/Usage: None Example: None The Data Table is not currently displayed. There are no rows in the Data Table
API-751
4.2 ReadFile Objects
The ReadFile object is used to read lines of text from a file and parse their contents. While these functions can be accomplished through other standard Basic or C++ functions, the capabilities of this object are often easier to use. The reading capability in this object also contains its own file buffering, which can be significantly faster than the native read functions. ReadFile can handle different file formats. It reads lines from files using either the UNIX or Windows carriage control conventions. This means that UNIX files that are read on Windows can be transferred either via ASCII or Binary FTP and will work equally well. Use the feRead method of the FEMAP Application object to create ReadFile Objects.
BOOL shareddelete
BOOL Exclusive
API-752
Open
Open
( filename, maxLineLength ) Description: This function opens a file and prepares for reading. Input: STRING filename The complete path to the file that you want to read. The maximum length of any line of text in this file. Actually, this is simply the maximum length that you are interested in reading. Longer lines may exist in the file, but they will simply be truncated at this length.
INT4 maxLineLength
Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage: You must call this function prior to reading from a file. You should always call Close when you are finished. Example: None Unable to open the file. Unable to allocate memory for file buffering.
Read
API-753
4.2.2.2 Read
Read
( void ) Description: This function reads a line from an open file. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This function reads the next line from the open file. The text from that line (without any carriage control) is loaded into the line property and can be accessed from there. If you use the various parsing/ field methods; you do not need to access the line property. You should always call AtEOF to check whether you have reached the end of the file. Example: None Unable to read from the file
API-754
4.2.2.3 AtEOF
AtEOF
AtEOF
( void ) Description: This function indicates whether you have reached the end of the file. Input: None Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: You should always use this check to determine when you reach the end of the file. Depending on how the file was created, Read can continue to read and return unwanted characters after reaching the true end of the file. This method will however indicate the end when you reach it. Example: None At the end of the file. You should stop reading. Not at the end of the file; there is more data to be read.
Close
API-755
4.2.2.4 Close
Close
( void ) Description: This function closes the current file and frees the memory used for file buffering. Input: None Output: None Return Code: None Remarks/Usage: You should always call this method when you are done reading a file. You should not call this method if you have not successfully opened a file. Example: None
API-756
4.2.2.5 Position
Position
Position
( void ) Description: This function returns the current location in the file where you are reading. Input: None Output: None Return Code: INT4 position Remarks/Usage: This function can be used with Jump to reposition to a specific file location for rereading. Example: None The current file location.
Jump
API-757
4.2.2.6 Jump
Jump
( jumpto ) Description: This function repositions the location in the file where the next read will occur. Input: INT4 jumpto Output: None Return Code: None Remarks/Usage: You should only specify jumpto as a value that you previously retrieved from a call to Position. Computing numbers yourself is prone to error because of handling of carriage control. Example: None The position to start reading. This position is the offset from the first byte in the file. Setting jumpto=0 positions to the beginning of the file
API-758
JumpToEnd
4.2.2.7 JumpToEnd
JumpToEnd
( jumpto ) Description: This function repositions the location in the file where the next read will occur. Input: INT4 jumpto Output: None Return Code: None Remarks/Usage: You should only specify jumpto as a value that you previously retrieved from a call to Position. Computing numbers yourself is prone to error because of handling of carriage control. Example: None The position to start reading. This position is the offset from the last byte in the file. Setting jumpto=0 positions to the end of the file
Size
API-759
4.2.2.8 Size
Size
( nSize ) Description: This function returns the size of the file in bytes. Input: INT8 nSize Output: None Return Code: FE_FAIL Remarks/Usage: Note that the file size is an 8-byte integer - this allows support for files over 4 GByte. Example: None Unable to retrieve file size. The size of the file.
API-760
TimeCreated
4.2.2.9 TimeCreated
TimeCreated
( nTime ) Description: Returns the time that the file was created. Input: INT8 nTime Output: None Return Code: FE_FAIL Remarks/Usage: Note that the file size is an 8-byte integer. Example: None Unable to retrieve file information. The time the file was created.
TimeWritten
API-761
4.2.2.10 TimeWritten
TimeWritten
( nTime ) Description: Returns the time that the file was written. Input: INT8 nTime Output: None Return Code: FE_FAIL Remarks/Usage: Note that the file size is an 8-byte integer. Example: None Unable to retrieve file information. The time the file was written.
API-762
TimeAccessed
4.2.2.11 TimeAccessed
TimeAccessed
( nTime ) Description: Returns the time that the file was accessed. Input: INT8 nTime Output: None Return Code: FE_FAIL Remarks/Usage: Note that the file size is an 8-byte integer. Example: None Unable to retrieve file information. The time the file was accessed.
Skipped
API-763
4.2.2.12 Skipped
Skipped
( void ) Description: Indicates whether the last read actually skipped over one or more lines. Input: None Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: This method will only indicate lines were skipped if one or more of the methods are being used that causes short, blank or searched lines to be skipped. Example: None One or more lines were skipped. No lines were skipped.
API-764
ShowStatus
4.2.2.13 ShowStatus
ShowStatus
( on ) Description: Turn on or off the status bar in FEMAP during the read. Input: BOOL on Output: None Return Code: None Remarks/Usage: None Example: None If True, the Status bar will be displayed showing the reading progress. If False, no Status bar will be displayed.
SetNoBlankLines
API-765
4.2.2.14 SetNoBlankLines
SetNoBlankLines
( on ) Description: Indicate whether or not to read blank lines. Input: BOOL on Output: None Return Code: None Remarks/Usage: Blank lines are lines containing no text, or lines that because of other processing are reduced to being a blank line. Example: None If True, blank lines will be skipped.
API-766
SetNoShortLines
4.2.2.15 SetNoShortLines
SetNoShortLines
( on, minLineLength ) Description: Indicate whether or not to read lines that are shorter than a specified length. Input: BOOL on INT4 minLineLength Output: None Return Code: None Remarks/Usage: None Example: None If True, short lines will be skipped. If on=True, lines shorter than this length will be skipped.
SetTrimSpace
API-767
4.2.2.16 SetTrimSpace
SetTrimSpace
( on ) Description: Indicate whether or not to trim all white space characters off of the front and back of each line. Input: BOOL on Output: None Return Code: None Remarks/Usage: Turning this on will delete all leading and trailing spaces. You normally only want to do this if the line is to be parsed using a free format. White space on the interior (after the first non-white space character and before the last non-white space character) is not deleted. Example: None If True, white space will be trimmed.
API-768
SetTrimEndSpace
4.2.2.17 SetTrimEndSpace
SetTrimEndSpace
( on ) Description: Indicate whether or not to trim all white space characters off the end of each line. Input: BOOL on Output: None Return Code: None Remarks/Usage: Turning this on will delete all trailing spaces. This is just like SetTrimSpace, but only trims trailing, not leading white space. Example: None If True, trailing white space will be trimmed.
SetTrimFront
API-769
4.2.2.18 SetTrimFront
SetTrimFront
( on, numChar ) Description: Indicate whether or not to trim a certain number of characters off of the front of each line. Input: BOOL on INT4 numChar Output: None Return Code: None Remarks/Usage: Turning this on trims numChar from the front of every line. Example: None If True, leading characters will be trimmed. The number of characters to trim, regardless of content.
API-770
SetUppercase
4.2.2.19 SetUppercase
SetUppercase
( on ) Description: Returns all text in uppercase. Input: BOOL on Output: None Return Code: None Remarks/Usage: None Example: None If True, all text will be returned in uppercase.
SetSkip
API-771
4.2.2.20 SetSkip
SetSkip
( on ) Description: Indicates that lines containing the search strings are to be skipped. Input: BOOL on Output: None Return Code: None Remarks/Usage: This function must be used in combination with the SetSearchString method. This cannot be used with the SetSearch method Example: None If True, all lines that contain the search strings are skipped.
API-772
SetSearch
4.2.2.21 SetSearch
SetSearch
( on ) Description: Indicates that lines containing the search strings are to be kept and others are to be skipped. Input: BOOL on Output: None Return Code: None Remarks/Usage: This function must be used in combination with the SetSearchString method. This cannot be used with the SetSkip method. Example: None If True, all lines that do not contain the search strings are skipped.
SetSearchString
API-773
4.2.2.22 SetSearchString
SetSearchString
( mainStr, orStr ) Description: Searches for lines containing the specified strings. Input: STRING mainStr STRING orStr Output: None Return Code: FE_FAIL Remarks/Usage: This method can be called up to five times before reading to search for multiple strings. Example: None More than five search string pairs have been specified. The primary search string. A second alternate string which could be on the line instead of mainStr. This should normally be specified as a blank string to just use the primary search string.
API-774
SetSkipAfterSearch
4.2.2.23 SetSkipAfterSearch
SetSkipAfterSearch
( lines ) Description: Specifies the number of lines to skip after finding a line that contains one of the search strings. Input: INT4 lines Output: None Return Code: None Remarks/Usage: In some cases you may want to skip certain headers in a file. You can search for a keyword in the header, then use this to skip the remaining header lines. If not specified, no lines are skipped. Example: None The number of lines to skip.
SetFormFeed
API-775
4.2.2.24 SetFormFeed
SetFormFeed
( on ) Description: Indicates that Form Feed (FF) characters should be treated as end-of-line carriage control. Input: BOOL on Output: None Return Code: None Remarks/Usage: Normally this method can be ignored - most text files do not contain form feed characters. If you are reading the formatted output of some other program, however, this may be important if the program relies on writing a form feed to end certain lines. Example: None If True, FF characters will also end a line.
API-776
SetTabSize
4.2.2.25 SetTabSize
SetTabSize
( tabsize ) Description: Specifies the number of spaces to convert tab characters into. Input: INT4 tabsize Output: None Return Code: None Remarks/Usage: The size that you specify will be overridden by any choice that the user has made in the Global property Pref_ReadTabSize Example: None The number of spaces to convert into.
LineInit
API-777
4.2.2.26 LineInit
LineInit
( maxLineLength ) Description: Used to initialize the necessary properties required for line parsing if you are not reading a file. Input: INT4 maxLineLength Output: None Return Code: None Remarks/Usage: Normally you will not call this method. If you are reading a file and want to use the parsing/field capabilities, all of that will be handled automatically. If, however, you just want to use the parsing/field capabilities to parse text that you have from some other source, you can call this method to initialize the necessary properties. Then you simply set the line property to the text you want to parse and call the various field methods. Example: None The maximum length of line that you will be parsing.
API-778
Reparse
4.2.2.27 Reparse
Reparse
( void ) Description: Used to indicate that you want to reparse the current line. Input: None Output: None Return Code: None Remarks/Usage: Use this method if you want to use multiple formats to parse the line. Call the field methods with the first format, change the format, call Reparse, and call the field routines again. Example: None
FixedFormat
API-779
4.2.2.28 FixedFormat
FixedFormat
( numField, width ) Description: Used to specify the number of fields and field widths for a fixed format read. Input: INT4 numField INT4 width[0..numField-1] Output: None Return Code: None Remarks/Usage: None Example: None The number of fields to parse from the line. Must be between 1 and 50. The widths, in characters, of the fields to parse.
API-780
SetFixedFormat
4.2.2.29 SetFixedFormat
SetFixedFormat
( void ) Description: Indicates that you want to parse a line using fixed field widths. Input: None Output: None Return Code: None Remarks/Usage: You must call FixedFormat to specify the field widths. Example: None
SetFreeFormat
API-781
4.2.2.30 SetFreeFormat
SetFreeFormat
( void ) Description: Indicates that you want to parse a line using free format. Input: None Output: None Return Code: None Remarks/Usage: Free format indicates fields with either spaces or commas. Multiple commas create multiple fields. Multiple spaces do not. Example: None
API-782
SetAutoFormat
4.2.2.31 SetAutoFormat
SetAutoFormat
( void ) Description: Indicates that you want to parse a line using either fixed or free format. Input: None Output: None Return Code: None Remarks/Usage: This option checks the line for a comma. If any commas exist, free format is used; otherwise, fixed format is used. Example: None
Field
API-783
4.2.2.32 Field
Field
( fieldID ) Description: Parses the current line and returns the indicated field as a text string. Input: INT4 fieldID Output: None Return Value STRING field Remarks/Usage: None Example: None The text in the selected field. The ID of the field on the line (1..N).
API-784
IntField
4.2.2.33 IntField
IntField
( fieldID, defaultValue ) Description: Parses the current line and returns the indicated field as an integer. Input: INT4 fieldID INT4 defaultValue Output: None Return Code: INT4 field Remarks/Usage: If the field is not blank, but does not contain an integer - either a real number or some other text - the return value will be 0, not the default value. Example: None An integer representation of the text in the field The ID of the field on the line (1..N). If the selected field is blank, the return value will be this value.
RealField
API-785
4.2.2.34 RealField
RealField
( fieldID, defaultValue ) Description: Parses the current line and returns the indicated field as a real number. Input: INT4 fieldID REAL8 defaultValue Output: None Return Code: REAL8 field Remarks/Usage: If the field is not blank, but does not contain a real number - some other text - the return value will be 0.0, not the default value. Example: None An real number representation of the text in the field. The ID of the field on the line (1..N). If the selected field is blank, the return value will be this value.
API-786
BoolField
4.2.2.35 BoolField
BoolField
( fieldID, defaultValue ) Description: Parses the current line and returns the indicated field as a boolean value. Input: INT4 fieldID BOOL defaultValue Output: None Return Code: BOOL field Remarks/Usage: This function will interpret either 1, y, or yes as True, and 0, n or no as False. Example: None An Boolean representation of the text in the field. The ID of the field on the line (1..N). If the selected field is blank, the return value will be this value.
BoolField
API-787
API-788
4.3 Selector Object
The Selector object provides access to the functionality of the selector in your model. It is not a model entity. Use the feSelector method of the FEMAP Application object to access the Selector object.
ClearAll
API-789
ClearAll
( void ) Description: This method clears all entities of any type from the Selector Input: None Output: None Return Code: None Remarks/Usage: None Example:
API-790
4.3.2.2 Clear
Clear
Clear
( entityType ) Description: This method clears all entities of the specified type from the Selector Input: INT4 entityType Output: None Return Code: None Remarks/Usage: None Example: The entity type to remove from the selector.
Count
API-791
4.3.2.3 Count
Count
( entityType, nSelected ) Description: This method returns the number of entities of a given type that are currently selected Input: INT4 entityType Output: INT4 nSelected Return Code: None Remarks/Usage: None Example: The number of entityType entities that are currently selected. The entity type to query
API-792
SelectBox
4.3.2.4 SelectBox
SelectBox
( void ) Description: This method displays the box selection dialog. Input: None Output: None Return Code: None Remarks/Usage: This method automatically enables Multiple Mode Example:
SelectCircle
API-793
4.3.2.5 SelectCircle
SelectCircle
( void ) Description: This method displays the circle selection dialog. Input: None Output: None Return Code: None Remarks/Usage: This method automatically enables Multiple Mode Example:
API-794
SelectPolygon
4.3.2.6 SelectPolygon
SelectPolygon
( void ) Description: This method displays the polygon selection dialog. Input: None Output: None Return Code: None Remarks/Usage: This method automatically enables Multiple Mode Example:
SelectFreehand
API-795
4.3.2.7 SelectFreehand
SelectFreehand
( void ) Description: This method displays the freehand selection dialog. Input: None Output: None Return Code: None Remarks/Usage: This method automatically enables Multiple Mode Example:
API-796
4.3.2.8 Grow
Grow
Grow
( void ) Description: This method grows the current selection by adding adjacent entities Input: None Output: None Return Code: None Remarks/Usage: This method automatically enables Multiple Mode. It is the same as calling the Grow command on the selector toolbar. Example:
Shrink
API-797
4.3.2.9 Shrink
Shrink
( void ) Description: This method shrinks the current selection by removing outer entities Input: None Output: None Return Code: None Remarks/Usage: This method automatically enables Multiple Mode. It is the same as calling the Shrink command on the selector toolbar. Example:
API-798
4.3.2.10 Show
Show
Show
( bShowAll ) Description: This method shows the current selection Input: BOOL bShowAll Output: None Return Code: None Remarks/Usage: None Example: If True, all selected entities are shown. If False, only those of the active type (specified by the SelectEntity property) are shown.
SaveGroup
API-799
4.3.2.11 SaveGroup
SaveGroup
( groupID ) Description: This method saves the current selection as a group Input: INT4 groupID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: Unable to create group from selection The ID of the group to create
API-800
LoadGroup
4.3.2.12 LoadGroup
LoadGroup
( groupID ) Description: This method adds the specified group to the selection Input: INT4 groupID Output: None Return Code: FE_FAIL Remarks/Usage: This Method automatically enables Multiple Mode. It does not clear the current selection before adding the group. Example: Unable to load the group The ID of the group to load
UpdateDataTable
API-801
4.3.2.13 UpdateDataTable
UpdateDataTable
( void ) Description: This method adds the current selection to the Data Table Input: None Output: None Return Code: None Remarks/Usage: None Example:
API-802
4.3.2.14 Add
Add
Add
( entityType, ID ) Description: This method adds an entity to the selector. Input: INT4 entityType INT4 ID Output: None Return Code: None Remarks/Usage: None Example: The type of entity to add. The ID of the entity of entityType to add
AddSet
API-803
4.3.2.15 AddSet
AddSet
( entityType, nSetID, bUpdateDataTable ) Description: This method adds multiple entities to the selector. Input: INT4 entityType INT4 nSetID BOOL bUpdateDataTable Output: None Return Code: None Remarks/Usage: None Example: The type of entity to add. The ID of a Set object that contains the list of IDs of the entities to add. If True, the selected entities are automatically added to the Data Table.
API-804
GetSelected
4.3.2.16 GetSelected
GetSelected
( entityType ) Description: This method creates and returns a Set object that containst the IDs of all entities of a specified type that are currently selected. Input: INT4 entityType Output: None Return Code: None Remarks/Usage: The Set object is returned in place of the return code. Example: The type of entity that will be queried.
Copy
API-805
4.3.2.17 Copy
Copy
( void ) Description: This method copies all selected entities to the Clipboard. Input: None Output: None Return Code: None Remarks/Usage: The entities are copied in FEMAP Neutral format and can then be pasted into another model. Example:
API-806
4.3.2.18 Paste
Paste
Paste
( void ) Description: This method pastes entities from the Clipboard into the current model. Input: None Output: None Return Code: None Remarks/Usage: Data on the clipboard must be in FEMAP Neutral format, as placed there by the Selector Copy command/method. Example:
API-807
4.4 Set Objects
The Set object is used to contain lists of IDs. Sets, once created, can be passed to many other functions to operate on groups of multiple entities. You can also use Set objects for your own purposes, to make it easier to traverse a list of IDs. Sets can be persistent objects. They can be saved with a model and can be retrieved at any later time, in a different script or program, or even in a different modeling session. Use the feSet method of the FEMAP Application object to create Set objects.
BOOL Save
INT4 CurrentID
API-808
Add
Add
( id ) Description: This function adds an ID into a selection set. Input: INT4 id Output: None Return Code: FE_FAIL Remarks/Usage: The ID that you are adding to the selection set is just that, an ID. Although it usually represents the ID of some other existing entity in your model, there is no requirement for this. Example: None ID specifies an invalid value. ID to add to the selection set.
AddRange
API-809
4.4.2.2 AddRange
AddRange
( startID, stopID, increment ) Description: This function adds a range of IDs into a selection set. Input: INT4 startID INT4 stopID INT4 increment Output: None Return Code: FE_FAIL Remarks/Usage: This is just like the Add Method, but it can be used to add multiple IDs in one call. Example: None ID specifies an invalid value. The first ID to add to the selection set. The last ID to add to the selection set. The ID increment between startID and stopID. Must be a positive number.
API-810
AddEntitiesOnLayer
4.4.2.3 AddEntitiesOnLayer
AddEntitiesOnLayer
( laySET, entityTYPE ) Description: This function adds all entities of a selected type that are on a set of layers into the set. Input: INT4 laySET The setID that contains the layers to include. Specify a negative number to include entities on a single layer. The type of entities being included into the set. Only those entities that reference a layer in laySET will be included. For entity information, see Section 3.3.6, "Entity Types"
INT4 entityTYPE Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None
AddSet
API-811
4.4.2.4 AddSet
AddSet
( addID ) Description: This function adds all of the selected IDs from another set into the current set. Input: INT4 addID Output: None Return Code: FE_FAIL Remarks/Usage: This function simply adds all IDs in the addID set into the current set. Duplication does not cause an error; the ID will simply remain selected. The addID set remains unchanged during this command - only the current set is updated. Example: None Unable to add into the specified set. ID of the selection set containing IDs to add. Accessed from the ID property of the set.
API-812
AddSetRule
4.4.2.5 AddSetRule
AddSetRule
( addID, ruleID ) Description: This function adds to a selection set by using one of the standard group selection rules. It uses the IDs from another selection set to create the new one. Input: INT4 addID INT4 ruleID Output: None Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: This function is just like calling AddRule( ) once for each of the IDs in the addID set. This function adds to the current set; it does not clear previous additions. Example: None Not able to create the requested selection set. Either the addID selection set was empty, or there was a problem processing it. The selection set where the IDs will be found. The interpretation of these IDs depends on the type of rule that you select. ID of a selection rule. For more information, see Section 4.4.2.7, "Group Selection Rules".
AddRule
API-813
4.4.2.6 AddRule
AddRule
( id, ruleID ) Description: This function adds to a selection set by using one of the standard group selection rules. Input: INT4 id INT4 ruleID Output: None Return Code: FE_FAIL Remarks/Usage: This is a very powerful tool to create selections which reference attributes of another entity. There are many group selection rules - review them carefully to choose the appropriate one for your task. This function adds to the set; it does not clear previous additions. Example: None Not able to create the requested selection set. The ID that you are specifying. The interpretation of this value depends on the type of rule that you select. ID of a selection rule. For more information, see Section 4.4.2.7, "Group Selection Rules".
API-814
API-815
API-816
API-817
API-818
4.4.2.8 AddAll
AddAll
AddAll
( entityTYPE ) Description: This function adds the IDs of all existing entities of a selected type into the current selection set. Input: INT4 entityTYPE Output: None Return Code: FE_FAIL Remarks/Usage: All entity IDs are added to the current set. The set is not emptied before this operation. Example: None Unable to add to current set. Type of entity to select. For more information, see Section 3.3.6, "Entity Types".
AddAllExcept
API-819
4.4.2.9 AddAllExcept
AddAllExcept
( entityTYPE, exceptSET ) Description: This function adds the IDs of all existing entities of a selected type into the current selection set, except those already selected in exceptSET. Input: INT4 entityTYPE INT4 exceptSET Output: None Return Code: FE_FAIL Remarks/Usage: The set is not emptied before this operation. Example: None Unable to add to current set. Type of entity to select. For more information, see Section 3.3.6, "Entity Types". The ID of a set that contains the IDs of entities to not add into this set. Specify a negative number to skip adding a single entity.
API-820
AddCommon
4.4.2.10 AddCommon
AddCommon
( set1, set2 ) Description: This function adds all IDs that are in both set1 and set2 to the current selection set. Input: INT4 set1 INT4 set2 Output: None Return Code: FE_FAIL Remarks/Usage: IDs must exist in both set1 and set2 to be added. Only the current set is updated by this command - the other sets remain unchanged. Example: None Unable to add IDs to the current set. ID of the first selection set to check. ID of the second selection set to check.
AddNewRemoveCommonSet
API-821
4.4.2.11 AddNewRemoveCommonSet
AddNewRemoveCommonSet
( addID ) Description: This function adds all IDs in addID that are not in the current set, and removes any IDs that are common to both sets Input: INT4 addID Output: None Return Code: FE_FAIL Remarks/Usage: This method implements a boolean XOR of the addID set and the current set. Example: None Unable to add IDs to the current set. ID of the set to combine with the current set
API-822
AddGroup
4.4.2.12 AddGroup
AddGroup
( entityTYPE, groupID ) Description: This function adds the all of the IDs of a selected type from a group into the current selection set. Input: INT4 entityTYPE INT4 groupID Output: None Return Code: FE_NOT_EXIST FE_FAIL Remarks/Usage: All entity IDs from the group are added to the current set. The set is not emptied before this operation. Example: None Either the group did not exist, or no entities of the selected type were in the group. Unable to add to current set. Type of entity to select. For more information, see Section 3.3.6, "Entity Types". ID of the group to copy IDs from.
AddArray
API-823
4.4.2.13 AddArray
AddArray
( numID, arrayID ) Description: This function adds an array of IDs into a selection set. Input: INT4 numID INT4 arrayID[0..numID-1] Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage: This is just like the Add Method, but it can be used to add multiple IDs in one call. Example: None arrayID not properly defined unable to allocate working memory to add contents of arrayID to set The number of entries in the arrayID array An array of IDs to be added to the selection set.
API-824
AddCoordinate
4.4.2.14 AddCoordinate
AddCoordinate
( entityTYPE, nCSysID, vbXYZ, vnMode, vdMin, vdMax ) Description: This function adds entity IDs into a set as selected by their coordinate locations Input: The type of entities being included into the set. For entity information, see Section 3.3.6, "Entity Types". Only Point, Curve, Surface, Boundary, Solid, Volume, Node, Element, Property, Material, Coordinate System, Layup, Text, Connection_Region, Connection and Connection _Prop entity types are valid. The ID of the coordinate system to select in. For Rectangular systems, coordinate directions are XYZ. For Cylindrical systems, the coordinate directions are R,Theta,Z, and for Spherical, R,Theta,Phi Flags to consider selecting based on the associated coordinate direction. If True, then the other arguments are used to define the selection. If False, no selections will be done based on that coordinate. 0=Select Above Maximum, 1=Select Below Minimum, 2=Select Outside (Below Min,Above Max), 3=Select Between (Above Min and Below Max), 4=Select At within Tolerance The minimum coordinate for most modes. Not used for Above Maximum. For Select At the coordinate location to select around. The maximum coordinate for most modes. Not used for Below Minimum. For Select At the tolerance around the specified location that the coordinate must fall within to be selected.
INT4 entityTYPE
INT4 nCSysID
BOOL vbXYZ[3]
INT4 vnMode[3]
REAL8 vdMin[3]
arrays not properly specified not a valid entityTYPE for this method
This works just like the coordinate selection available from the entity selection dialog. Example: None
AddAroundPoint
API-825
4.4.2.15 AddAroundPoint
AddAroundPoint
( entityTYPE, vBase, nMode, dMin, dMax ) Description: This function adds entity IDs into a set as selected by their proximit to a specified location Input: The type of entities being included into the set. For entity information, see Section 3.3.6, "Entity Types". Only Point, Curve, Surface, Boundary, Solid, Volume, Node, Element, Property, Material, Coordinate System, Layup, Text, Connection_Region, Connection and Connection _Prop entity types are valid. The coordinates, in Global Rectangular coordinates, of the point to search around for selections. 0=Select Above Maximum (Farther Than), 1=Select Below Minimum (Closer Than), 2=Select Outside (Below Min,Above Max), 3=Select Between (Above Min and Below Max), 4=Select At within Tolerance The minimum coordinate for most modes. Not used for Above Maximum. For Select At the coordinate location to select around. The maximum coordinate for most modes. Not used for Below Minimum. For Select At the tolerance around the specified location that the coordinate must fall within to be selected.
INT4 entityTYPE
REAL8 vBase[3]
INT4 nMode
REAL8 dMin
arrays not properly specified not a valid entityTYPE for this method
This works just like the Around Point coordinate selection available from the entity selection dialog. Example: None
API-826
AddAroundVector
4.4.2.16 AddAroundVector
AddAroundVector
( entityTYPE, vBase, vVec, nMode, dMin, dMax ) Description: This function adds entity IDs into a set as selected by their proximit to a specified vector Input: The type of entities being included into the set. For entity information, see Section 3.3.6, "Entity Types". Only Point, Curve, Surface, Boundary, Solid, Volume, Node, Element, Property, Material, Coordinate System, Layup, Text, Connection_Region, Connection and Connection _Prop entity types are valid. The coordinates, in Global Rectangular coordinates, of the base of the vector around which to search for selections. The components, in Global Rectangular coordinates, of the vector around which to search for selections. 0=Select Above Maximum (Farther Than), 1=Select Below Minimum (Closer Than), 2=Select Outside (Below Min,Above Max), 3=Select Between (Above Min and Below Max), 4=Select At within Tolerance The minimum coordinate for most modes. Not used for Above Maximum. For Select At the coordinate location to select around. The maximum coordinate for most modes. Not used for Below Minimum. For Select At the tolerance around the specified location that the coordinate must fall within to be selected.
INT4 entityTYPE
INT4 nMode
REAL8 dMin
arrays not properly specified not a valid entityTYPE for this method
This works just like the Around Vector coordinate selection available from the entity selection dialog. Example: None
AddAroundPlane
API-827
4.4.2.17 AddAroundPlane
AddAroundPlane
( entityTYPE, vBase, vVec, nMode, dMin, dMax ) Description: This function adds entity IDs into a set as selected by their proximit to a specified plane Input: The type of entities being included into the set. For entity information, see Section 3.3.6, "Entity Types". Only Point, Curve, Surface, Boundary, Solid, Volume, Node, Element, Property, Material, Coordinate System, Layup, Text, Connection_Region, Connection and Connection _Prop entity types are valid. The coordinates, in Global Rectangular coordinates, of a point on the plane around which to search for selections. The components, in Global Rectangular coordinates, of the normal to the plane around which to search for selections. 0=Select Above Maximum (Positive Side), 1=Select Below Minimum (Negative Side), 2=Select Outside (Below Min,Above Max), 3=Select Between (Above Min and Below Max), 4=Select At within Tolerance The minimum coordinate for most modes. Not used for Above Maximum. For Select At the coordinate location to select around. The maximum coordinate for most modes. Not used for Below Minimum. For Select At the tolerance around the specified location that the coordinate must fall within to be selected.
INT4 entityTYPE
INT4 nMode
REAL8 dMin
arrays not properly specified not a valid entityTYPE for this method
This works just like the Around Plane coordinate selection available from the entity selection dialog. Example: None
API-828
AddNodesOnGeometry
4.4.2.18 AddNodesOnGeometry
AddNodesOnGeometry
( entityTYPE, entityID, bClear, bFullTree, bBoundaryOnly ) Description: This function adds nodes to the set which are attached to the specified geometry. Input: INT4 entityTYPE INT4 entityID BOOL bClear BOOL bFullTree BOOL bBoundaryOnly Output: None Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: If bClear is false this method can be called multiple times to build up an accumulated list. Example: None Unable to return nodes, possibly none exist. No nodes were attached to the entity in the manner you selected. Insufficient memory to allocate list of attached nodes. The type of entity to find attached nodes. ID of entity to find attached nodes. Flag to clear the set before adding nodes. If True, the nodes attached to the sub entities are also included ( Solid = Surf,Curve,Point: Surf=Curve,Point: Curve=Point ) Flag to only include nodes at the boundary of the entity.
AddAllTitle
API-829
4.4.2.19 AddAllTitle
AddAllTitle
( entityTYPE, nSetID, sFind ) Description: This function adds the selected entities which have matching titles. Input: INT4 entityTYPE The type of entity to add. The entity type must have a title to be valid for this method. Normally this should be 1. For specific set-based types such as Load and Constraint Definitions, it must be the ID of the set to search for matching titles. A text string that will be compared to the entity title. If this string is found anywhere in the title, that entity ID will be added to the set. Comparisons are not case sensitive.
INT4 nSetID
STRING sFind Output: None Return Code: FE_INVALID FE_NOT_EXIST Remarks/Usage: None Example: None
You specified a blank string to match No entities were found that matched the string you supplied.
API-830
AddAllColor
4.4.2.20 AddAllColor
AddAllColor
( entityTYPE, nSetID, nColor, nColorMatch ) Description: This function adds the selected entities which match a specified color. Input: INT4 entityTYPE The type of entity to add. The entity type must have a color to be valid for this method. Normally this should be 1. For specific set-based types such as the various load and constraint types, it must be the ID of the set to search for matching colors. The color to search for. This number is a combination of the color, linestyle and pattern/transparency Any combination of 1=Match Color only, 2=Match Pattern only, 4=Match Linestyle only. So 3=Match Color & Pattern, 6=Pattern & Linestyle, 5=Color & Linestyle, 7=Match All
INT4 nSetID
INT32 nColor
INT32 nColorMatch Output: None Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None
AddMidsideNodes
API-831
4.4.2.21 AddMidsideNodes
AddMidsideNodes
( setID ) Description: This function adds the midside nodes that are on selected elements Input: INT4 setID Output: None Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None No midside nodes were found on the elements that you specified. The ID of a Set object that contains the elements that reference the midside nodes to add. Alternatively, if you specify a negative value, this is simply the ID of the single element.
API-832
IsAdded
4.4.2.22 IsAdded
IsAdded
( id ) Description: This function checks to see if an ID is currently added into a selection set. Input: INT4 id Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: The selection set need not exist to use this function. However, if it does not, the return code will simply be FE_FAIL - the ID is not selected. Example: None ID is added into the selection set. ID is not added into the selection set. ID to check.
IsSetAdded
API-833
4.4.2.23 IsArrayAdded
IsSetAdded
( numID, arrayID ) Description: This function checks to see if all IDs from an array are currently added into a selection set. Input: INT4 numID INT4 arrayID[0..numID-1] Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: None Example: None All IDs in the array are in the current Set At least one ID from the array is not in the current Set The number of IDs in the array The array containing IDs to check to see if they are in the current Set
API-834
IsSetAdded
4.4.2.24 IsSetAdded
IsSetAdded
( nSetID ) Description: This function checks to see if all IDs from a Set are currently added into a selection set. Input: INT4 nSetID Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: None Example: None All IDs in nSetID are in the current Set At least one ID from nSetID is not in the current Set The ID of the Set to check to see if all IDs are in this Set
Select
API-835
4.4.2.25 Select
Select
( entityTYPE, clear, title ) Description: This function displays a standard selection dialog box to allow a user to choose entities of a specific type and create a selection set. Input: INT4 entityTYPE Type of entity to select. For more information, see Section 3.3.6, "Entity Types". If True, the set is cleared prior to selection, and only the selected entities will be in the set. If False, previously selected entities will be displayed in the dialog box for editing, or for combining with new selections. A text string that will be added to the title bar of the dialog box to give the user more information about what is being selected.
BOOL clear
The user cancelled the selection. No entities of the selected type exist. None were selected and the dialog box was not displayed. If clear=True, the selection set will be empty.
After the dialog box is closed, the set contains the list of all IDs that were selected. If clear=False, then some of the entities could have been selected prior to the dialog being displayed. If the user hits Cancel to close the dialog, then the set contains whatever it contained before, unless clear=True, in which case it contains nothing. Example: None
API-836
SelectID
4.4.2.26 SelectID
SelectID
( entityTYPE, title, ID ) Description: This function displays a selection dialog box to allow a user to choose a single entity of a specific type. The ID of the entity is returned and is stored in the current selection set. Input: INT4 entityTYPE STRING title Output: INT4 ID Return Code: FE_CANCEL FE_NOT_EXIST Remarks/Usage: This function displays one of two different dialog boxes, depending on the entity type that you choose. For entities that have titles, like properties or materials, the dialog box will contain a list of the available entities along with their titles. For other entities, like nodes or elements, a simple dialog box is displayed so that the ID can be typed or picked. Example: None The user cancelled the selection. No entities of the selected type exist. None were selected and the dialog box was not displayed. If clear=True, the selection set will be empty. The ID of the entity that was selected. Type of entity to select. For more information, see Section 3.3.6, "Entity Types". A text string that will be added to the title bar of the dialog box to give the user more information about what is being selected.
SelectIDInSet
API-837
4.4.2.27 SelectIDInSet
SelectIDInSet
( entityTYPE, title, ID ) Description: This function displays a selection dialog box to allow a user to choose a single entity of a specific type. The ID of the entity is returned and is stored in the current selection set. Input: INT4 entityTYPE STRING title Type of entity to select. For more information, see Section 3.3.6, "Entity Types". A text string that will be added to the title bar of the dialog box to give the user more information about what is being selected. Select the entity from the specified SetID - for example an Output Vector from a specific Output Set, or a Load or Constraint Definition from a specific Load or Constraint Set
The user cancelled the selection. No entities of the selected type exist. None were selected and the dialog box was not displayed. If clear=True, the selection set will be empty.
This function displays one of two different dialog boxes, depending on the entity type that you choose. For entities that have titles, like properties or materials, the dialog box will contain a list of the available entities along with their titles. For other entities, like nodes or elements, a simple dialog box is displayed so that the ID can be typed or picked. Example: None
API-838
SelectMultiID
4.4.2.28 SelectMultiID
SelectMultiID
( entityTYPE, entitySET, title ) Description: This function displays a multi-selection dialog box to allow a user to choose one or more entities of a specific type. The IDs of the selected entities are stored in the current selection set. Input: INT4 entityTYPE Type of entity to select. For more information, see Section 3.3.6, "Entity Types". The setID associated with the entities you want to select. For most entities this is 1, however for some like Loads and Constraints, they may be stored in other sets. A text string that will be added to the title bar of the dialog box to give the user more information about what is being selected.
INT4 entitySET
This function will work for most entity types, however in most cases you should only use it for entities with titles. If you use it for entities like Nodes or Elements, you will just see a potentially large list of numbers which are not very useful for selection. Example: None
SelectOutputVectorID
API-839
4.4.2.29 SelectOutputVectorID
SelectOutputVectorID
( title, outsetID, limitOutputType, limitComplex, limitToEntity, allowCorner, selID ) Description: This function displays a selection dialog box to allow a user to choose an output vector. The ID of the entity is returned and is stored in the current selection set. Input: STRING title INT4 outsetID INT4 limitOutputType A text string that will be added to the title bar of the dialog box to give the user more information about what is being selected. The ID of the Output Set containing the list of possible vectors to select. Reduces list of output vectors shown to the specified type (0=All, 1=Disp, 2=Accel, 3=Force, 4=Stress, 5=Strain, 6=Temp) Reduces list of output vectors shown based on type of real or complex data they contain (0=Magnitude, 1=Phase, 2=Real, 3=Imaginary, 4=Any) Reduces list of output vectors to those containing data on the specified entity type If True, output vectors at element corners will also be included
INT4 limitComplex
INT4 limitToEntity BOOL allowCorner Output: INT4 selID Return Code: FE_CANCEL FE_NOT_EXIST Remarks/Usage: None Example: None
The user cancelled the selection. No output vectors existed in the specified output set.
API-840
SelectList
4.4.2.30 SelectList
SelectList
( nNumEntity, entityTYPE ) Description: This function displays a selection dialog box to allow a user to choose a specified number of entities of a specific type. The IDs of the selected entities are stored in the current selection set. Input: INT4 nNumEntity INT4 entityTYPE Output: None Return Code: FE_CANCEL Remarks/Usage: The dialog box that is displayed by this method automatically closes when nNumEntity entities have been selected. Example: None The user cancelled the selection. Number of entities to be selected. Type of entity to select. For more information, see Section 3.3.6, "Entity Types".
Clear
API-841
4.4.2.31 Clear
Clear
( void ) Description: This function simply removes all selections and exclusions from the current set. Input: None Output: None Return Code: None Remarks/Usage: None Example: None
API-842
Remove
4.4.2.32 Remove
Remove
( id ) Description: This function removes an ID from a selection set. Input: INT4 id Output: None Return Code: FE_FAIL Remarks/Usage: Any ID can be removed from a selection set. Although it has no effect, it is not an error to remove an ID that was not currently added to a selection set, or even removing from a selection set that does not exist. Example: None ID specifies an invalid value. ID to remove from the selection set.
RemoveRange
API-843
4.4.2.33 RemoveRange
RemoveRange
( startID, stopID, increment ) Description: This function removes a range of IDs from a selection set. Input: INT4 startID INT4 stopID INT4 increment Output: None Return Code: FE_FAIL Remarks/Usage: This is just like the Remove Method, but it can be used to remove multiple IDs in one call. Example: None ID specifies an invalid value. The first ID to remove from the selection set. The last ID to remove from the selection set. The ID increment between startID and stopID. Must be a positive number.
API-844
RemoveArray
4.4.2.34 RemoveArray
RemoveArray
( nNumID, arrayID ) Description: This function removes a list of IDs specified in an array from a selection set. Input: INT4 nNumID INT4 arrayID[0..nNumID-1] Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage: This is just like the Remove Method, but it can be used to remove multiple IDs in one call. Example: None Unable to retrieve specified number of IDs from array. Unable to process the array. The number of IDs in the array to be removed The array of IDs to be removed
RemoveSet
API-845
4.4.2.35 RemoveSet
RemoveSet
( removeID ) Description: This function removes all of the selected IDs in another set from the current set. Input: INT4 removeID Output: None Return Code: FE_FAIL Remarks/Usage: This function removes all IDs in the removeID set that are currently selected. If removeID contains IDs that are not currently selected, they are skipped. This is not an error. The removeID set remains unchanged during this command - only the current set is updated. Example: None Unable to remove IDs from the specified set. ID of the selection set containing the IDs to remove.
API-846
RemoveNotCommon
4.4.2.36 RemoveNotCommon
RemoveNotCommon
( nSetID ) Description: This function removes any IDs that are not in both the current Set and the specified Set Input: INT4 nSetID Output: None Return Code: FE_FAIL Remarks/Usage: This function removes all IDs from the current Set that are not in the selected Set. The result is that the current Set will only contain IDs that are common to both Sets. The Set nSetID remains unchanged during this command - only the current set is updated. Example: None Unable to remove IDs from the specified set. ID of a Set that is checked for IDs that are common to the current Set
RemoveNotCommonToGroup
API-847
4.4.2.37 RemoveNotCommonToGroup
RemoveNotCommonToGroup
( entityType, groupID ) Description: This function removes any IDs that are not in both the current Set and the specified Group Input: INT4 entityTYPE INT4 groupID Output: None Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: This function removes all IDs from the current Set that are not in the selected Group of the specified entityTYPE. The result is that the current Set will only contain IDs that are common to the Set and the Group. The Group remains unchanged during this command - only the current set is updated. Example: None Unable to remove IDs from the specified set. There are no entities of the selected type in the Group The type of entities in the Group being tested. For entity information, see Section 3.3.6, "Entity Types" The ID of the group to test
API-848
RemoveGroup
4.4.2.38 RemoveGroup
RemoveGroup
( entityType, groupID ) Description: This function removes any IDs that are in a Group Input: INT4 entityTYPE INT4 groupID Output: None Return Code: FE_FAIL FE_NOT_EXIST Remarks/Usage: This function removes all IDs from the current Set that are in the selected Group and entityType. The Group is unchanged. Example: None Unable to remove IDs from the specified set. There are no entities of the selected type in the Group The type of entities in the Group being tested. For entity information, see Section 3.3.6, "Entity Types" The ID of the group to test
RemoveInternalCurves
API-849
4.4.2.39 RemoveInternalCurves
RemoveInternalCurves
( ) Description: This function removes the IDs of any curves that are internal to a boundary/compound surface Input: None Output: None Return Code: FE_OK Remarks/Usage: None Example: None
API-850
HasCommon
4.4.2.40 HasCommon
HasCommon
( nSetID ) Description: This function checks to see if there are any common IDs between two Sets Input: INT4 nSetID Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: Neither Set is changed by this method, it simply looks for the same ID in both Sets. Example: None Common IDs exist between the two Sets There are no common IDs in the Sets. The ID of the Set to check for common IDs with the current Set
Reload
API-851
4.4.2.41 Reload
Reload
( oldSet ) Description: This function reloads a saved selection set. Input: INT4 oldSet Output: None Return Code: FE_FAIL Remarks/Usage: Selection sets can be made to persist across programs or modeling sessions using the Save property. If a set is saved, it can be reloaded with this method. If you reload a Set with this method, you must manually also set Save to True if you want the set to persist after the object you reload into is destroyed. Example: None The oldSet selection set does not exist or is empty. The ID of the selection set to reload. This ID can be determined by querying the ID property of a set.
API-852
4.4.2.42 Reset
Reset
Reset
( void ) Description: This function resets the next pointer so that the next call to next will return the first entry in a selection set. Input: None Output: None Return Code: None Remarks/Usage: To find the first ID in a set, you must use the Reset method before calling Next. If you have just created a set and have not used Next, it is already reset. Example: None
Next
API-853
4.4.2.43 Next
Next
( void ) Description: This function returns the next selected ID in a selection set Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: To find the first ID in a set, you must use the Reset method before calling Next. If you have just created a set and have not used Next, it is already reset. This function updates internal pointers in the Set so that if you call it repeatedly it will walk through all IDs. Example: None The next selected ID. No additional IDs were selected.
API-854
4.4.2.44 NextID
NextID
NextID
( void ) Description: This function returns the next selected ID in a selection set. Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: This function is just like Next() except that it just returns the next ID. It does not increment the internal pointers, so if you repeatedly call NextID( ), you will get the same ID every time. Example: None The next selected ID. No additional IDs were selected.
First
API-855
4.4.2.45 First
First
( void ) Description: This function returns the first selected ID in a selection set. Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: The first ID is the lowest number, not the first entity added to the set. Calling this method is the same as calling Reset( ) followed by Next( ). Example: None The first selected ID. No IDs were selected.
API-856
4.4.2.46 Last
Last
Last
( void ) Description: This function returns the last selected ID in a selection set. Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: The last ID is the highest number, not the last entity added to the set. Example: None The last selected ID. No IDs were selected.
Match
API-857
4.4.2.47 Match
Match
( setID ) Description: This function tests to see if the contents of set setID match the current set. Input: INT4 setID Output: None Return Code: FE_FAIL Remarks/Usage: To match, the two sets must include all of the same IDs. Example: None Sets do not match. ID of the set to compare to this set.
API-858
4.4.2.48 Copy
Copy
Copy
( origID ) Description: This function makes a duplicate copy of a selection set. Input: INT4 origID Output: None Return Code: FE_FAIL Remarks/Usage: If the current set already existed and contained selected IDs, those will be deleted prior to copying. The resulting copy will always match the original. Example: None Unable to create the specified set. ID of the selection set to duplicate.
CopyToClipboard
API-859
4.4.2.49 CopyToClipboard
CopyToClipboard
( bAsList ) Description: This function copies the IDs of the selected entities to the Clipboard as text. Input: If True, the IDs are placed on the clipboard in a format that is one ID per line. If False, ranges of consecutive IDs are placed on the clipboard in the format startID, stopID, increment on each line. stopID is zero if a single ID is selected in this format.
BOOL bAsList
API-860
4.4.2.50 Count
Count
Count
( void ) Description: This function counts the number of IDs that are currently selected in the set. Input: None Output: None Return Code: count Remarks/Usage: This function simply looks at each of the selected IDs and counts the number that it finds. Example: None The number of IDs in the set.
DeleteAll
API-861
4.4.2.51 DeleteAll
DeleteAll
( void ) Description: This function simply deletes Sets which are saved in the model. Input: None Output: None Return Code: None Remarks/Usage: Great caution must be used when using this method. It deletes ALL sets in the model without any further notification. Any set objects in your program file will also be cleared. Example: None
API-862
GetArray
4.4.2.52 GetArray
GetArray
( numID, arrayID ) Description: This function adds an array of IDs into a selection set. Input: None Output: INT4 numID INT4 arrayID[0..numID-1] Return Code: FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: None Example: None No IDs are in the set Unable to allocate working memory to retrieve contents of set The number of entries in the set The array of all IDs in the set.
ConvertToAllCurves
API-863
4.4.2.53 ConvertToAllCurves
ConvertToAllCurves
( void ) Description: This function expands the current Set to contain all curves referenced by what is currently in the Set Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Combined Curves are in the Set, then all curves used to define them are also added. If any Curves used to define Combined Curves are in the Set, then those Combined Curves are also added. Example: None Expanded Set
API-864
ConvertToCombinedCurves
4.4.2.54 ConvertToCombinedCurves
ConvertToCombinedCurves
( void ) Description: This function replaces curves that are used to define Combined Curves with the Combined Curve. Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Curves used to define Combined Curves are in the Set, then those curves are removed, and the Combined Curves are added. Other Curves, either Combined Curves themselves, or curves not used to define Combined Curves are not changed in the Set. Example: None Expanded Set
ConvertToCombinedCurvesOnly
API-865
4.4.2.55 ConvertToCombinedCurvesOnly
ConvertToCombinedCurvesOnly
( void ) Description: This function replaces curves that are used to define Combined Curves with the Combined Curve and removes all others. Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Curves used to define Combined Curves are in the Set, then those curves are removed, and the Combined Curves are added. Other Curves, either Combined Curves themselves, or curves not used to define Combined Curves are all removed from the Set. Example: None Expanded Set
API-866
ConvertToInternalCurves
4.4.2.56 ConvertToInternalCurves
ConvertToInternalCurves
( void ) Description: This function replaces any Combined Curves in the Set with the curves used to define them. Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Combined Curves are in the Set, then those curves are removed, and the curves used to define them are added. Other curves are not changed in the Set. Example: None Expanded Set
ConvertToAllSurfaces
API-867
4.4.2.57 ConvertToAllSurfaces
ConvertToAllSurfaces
( void ) Description: This function expands the current Set to contain all surfaces referenced by what is currently in the Set Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Combined Surfaces are in the Set, then all surfaces used to define them are also added. If any Surfaces used to define Combined Surfaces are in the Set, then those Combined Surfaces are also added. Example: None Expanded Set
API-868
ConvertToBoundarySurfaces
4.4.2.58 ConvertToBoundarySurfaces
ConvertToBoundarySurfaces
( void ) Description: This function replaces surfaces that are used to define Combined Surfaces with the Combined Surface. Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Surfaces used to define Combined Surfaces are in the Set, then those surfaces are removed, and the Combined Surfaces are added. Other Surfaces, either Combined Surfaces themselves, or surfaces not used to define Combined Surfaces are not changed in the Set. Example: None Expanded Set
ConvertToBoundarySurfacesOnly
API-869
4.4.2.59 ConvertToBoundarySurfacesOnly
ConvertToBoundarySurfacesOnly
( void ) Description: This function replaces surfaces that are used to define Combined Surfaces with the Combined Surface and removes all others. Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Surfaces used to define Combined Surfaces are in the Set, then those surfaces are removed, and the Combined Surfaces are added. Other Surfaces, either Combined Surfaces themselves, or surfaces not used to define Combined Surfaces are all removed from the Set. Example: None Expanded Set
API-870
ConvertToInternalSurfaces
4.4.2.60 ConvertToInternalSurfaces
ConvertToInternalSurfaces
( void ) Description: This function replaces any Combined Surfaces in the Set with the surfaces used to define them. Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Combined Surfaces are in the Set, then those surfaces are removed, and the surfaces used to define them are added. Other surfaces are not changed in the Set. Example: None Expanded Set
Debug
API-871
4.4.2.61 Debug
Debug
( void ) Description: This function simply writes all of the IDs contained in a Set to the Message Window Input: None Output: None Return Code: FE_OK Remarks/Usage: This method is really only intended for Debugging. There is no particular formatting of the list of IDs (which can be quite long), it is simply dumped in a comma-separated fashion to the Message Window Example: None
API-872
Debug
API-873
4.5 Sort Objects
The Sort object is similar to the Set object, in that it is used to contain lists of IDs. This object however holds the IDs in a prescribed order - normally the order they were added to the object. The order however can be changed by sorting based on various criteria - hence the name of the object. This object is not used directly as input to other objects or methods, rather it can be used in your code to traverse entities in a particular sorted order. Use the feSort method of the FEMAP Application object to create Sort objects.
API-874
Add
Add
( id ) Description: This function adds an ID into a sort object. Input: INT4 id Output: None Return Code: FE_FAIL FE_NOT_AVAILABLE Remarks/Usage: The ID that you are adding to the sort object is just that, an ID. Although it usually represents the ID of some other existing entity in your model, there is no requirement for this. This method adds the ID and associates the current values of the dRealX, nIntX and eDataType properties with this ID. Therefore, if you want to later sort this object, you can first set the property values, then call this method to add an entry. Alternatively, you can use one of the other Add type functions to load both the ID and properties in one call. Example: None ID specifies an invalid value or memory can not be allocated for additional IDs. ID has already been added into object. IDs can only be added once. ID to add to the sort object.
AddReal
API-875
4.5.2.2 AddReal
AddReal
( id, dReal1, dReal2, dReal3 ) Description: This function adds an ID and associated real properties into a sort object. Input: INT4 id REAL8 dReal1 REAL8 dReal2 REAL8 dReal3 Output: None Return Code: FE_FAIL FE_NOT_AVAILABLE Remarks/Usage: The ID that you are adding to the sort object is just that, an ID. Although it usually represents the ID of some other existing entity in your model, there is no requirement for this. This method adds the ID and sets the values of the dRealX properties. The current values of nIntX and eDataType properties are also associated with this ID. Example: None ID specifies an invalid value or memory can not be allocated for additional IDs. ID has already been added into object. IDs can only be added once. Real properties to associate with ID ID to add to the sort object.
API-876
4.5.2.3 AddInt
AddInt
AddInt
( id, nInt1, nInt2, nInt3 ) Description: This function adds an ID and associated integer properties into a sort object. Input: INT4 id INT4 nInt1 INT4 nInt2 INT4 nInt3 Output: None Return Code: FE_FAIL FE_NOT_AVAILABLE Remarks/Usage: The ID that you are adding to the sort object is just that, an ID. Although it usually represents the ID of some other existing entity in your model, there is no requirement for this. This method adds the ID and sets the values of the nIntX properties. The current values of dRealX and eDataType properties are also associated with this ID. Example: None ID specifies an invalid value or memory can not be allocated for additional IDs. ID has already been added into object. IDs can only be added once. Integer properties to associate with ID ID to add to the sort object.
AddAll
API-877
4.5.2.4 AddAll
AddAll
( id, dReal1, dReal2, dReal3, nInt1, nInt2, nInt3, eDataType ) Description: This function adds an ID and associated integer properties into a sort object. Input: INT4 id REAL8 dReal1 REAL8 dReal2 REAL8 dReal3 INT4 nInt1 INT4 nInt2 INT4 nInt3 INT4 eDataType Output: None Return Code: FE_FAIL FE_NOT_AVAILABLE Remarks/Usage: The ID that you are adding to the sort object is just that, an ID. Although it usually represents the ID of some other existing entity in your model, there is no requirement for this. This method adds the ID and sets the values of all of the properties. Example: None ID specifies an invalid value or memory can not be allocated for additional IDs. ID has already been added into object. IDs can only be added once. Entity Type that is associated with an entry in the object. For possible values, refer to Section 3.3.6, "Entity Types" Integer properties to associate with ID Real properties to associate with ID ID to add to the sort object.
API-878
4.5.2.5 SetData
SetData
SetData
( id, dReal1, dReal2, dReal3, nInt1, nInt2, nInt3, eDataType ) Description: This function updates the properties associated with an already added ID. Input: INT4 id REAL8 dReal1 REAL8 dReal2 REAL8 dReal3 INT4 nInt1 INT4 nInt2 INT4 nInt3 INT4 eDataType Output: None Return Code: FE_FAIL Remarks/Usage: As an alternative to setting the properties prior to, or at the same time as you add IDs into the object, you can simply add IDs and update the associated values with this method. Example: None The specified ID could not be found in the object. Entity Type that is associated with an entry in the object. For possible values, refer to Section 3.3.6, "Entity Types" Integer properties to associate with ID Real properties to associate with ID ID to update in the sort object. This ID must have been already added to the object.
GetData
API-879
4.5.2.6 GetData
GetData
( id, dReal1, dReal2, dReal3, nInt1, nInt2, nInt3, eDataType ) Description: This function retrieves the properties associated with an already added ID. Input: INT4 id Output: REAL8 dReal1 REAL8 dReal2 REAL8 dReal3 INT4 nInt1 INT4 nInt2 INT4 nInt3 INT4 eDataType Return Code: FE_FAIL Remarks/Usage: None Example: None The specified ID could not be found in the object. Entity Type that is associated with an entry in the object. For possible values, refer to Section 3.3.6, "Entity Types" Integer properties associated with ID Real properties associated with ID ID to update in the sort object. This ID must have been already added to the object.
API-880
4.5.2.7 Find
Find
Find
( id ) Description: This function locates an ID within the object. Input: INT4 id Output: None Return Code: FE_FAIL FE_NOT_AVAILABLE Remarks/Usage: If the ID is found, the dRealX, nIntX and eDataType properties are all updated to match those associated with the ID. Example: None The specified ID could not be found in the object. ID specifies an invalid value. ID to locate
Remove
API-881
4.5.2.8 Remove
Remove
( id ) Description: This function removes an ID from a sort object. Input: INT4 id Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None ID specifies an invalid value. ID to remove from the sort object.
API-882
RemoveSet
4.5.2.9 RemoveSet
RemoveSet
( id ) Description: This function removes all of the selected IDs in another sort object from the current sort object. Input: INT4 id Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: None Example: None Unable to remove IDs from the specified sort set. ID of the sort set containing the IDs to remove.
IsAdded
API-883
4.5.2.10 IsAdded
IsAdded
( id ) Description: This function checks to see if an ID is currently added into a sort object. Input: INT4 id Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: None Example: None ID is added into the sort object. ID is not added into the sort object. ID to check.
API-884
4.5.2.11 Clear
Clear
Clear
( void ) Description: This function simply removes all IDs from the current object. Input: None Output: None Return Code: None Remarks/Usage: None Example: None
Reset
API-885
4.5.2.12 Reset
Reset
( void ) Description: This function resets the next pointer so that the next call to next will return the first entry in a sort object. Input: None Output: None Return Code: None Remarks/Usage: To find the first ID in a set, you must use the Reset method before calling Next. If you have just created a set and have not used Next, it is already reset. Example: None
API-886
4.5.2.13 Next
Next
Next
( void ) Description: This function returns the next selected ID in a sort object. Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: To find the first ID in a set, you must use the Reset method before calling Next. If you have just created a set and have not used Next, it is already reset. When you retrieve the ID, the properties dRealX, nIntX and eDataType are all udpated to match the values associated with that ID. Example: None The next ID. No additional IDs were available.
Prev
API-887
4.5.2.14 Prev
Prev
( void ) Description: This function returns the previous selected ID in a sort object. Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: To find the last ID in a set, you must use the Reset method before calling Prev. If you have just created a set and have not used Prev (or Next), it is already reset. When you retrieve the ID, the properties dRealX, nIntX and eDataType are all udpated to match the values associated with that ID. Example: None The previous ID. No additional IDs were available.
API-888
Current
4.5.2.15 Current
Current
( void ) Description: This function returns the currently selected ID in a sort object. Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: This method works just like Next() and Prev(), except that it does not move to a different ID. By calling this method, you retrieve the ID and the properties dRealX, nIntX and eDataType are all udpated to match the values associated with that ID. Example: None The current ID. No ID was available.
First
API-889
4.5.2.16 First
First
( void ) Description: This function returns the first ID in a sort object. Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: The first ID is the first ID in the object, either the first added, or the first after a sort. Calling this method is the same as calling Reset( ) followed by Next( ). When you retrieve the ID, the properties dRealX, nIntX and eDataType are all udpated to match the values associated with that ID. Example: None The first ID. No IDs were available.
API-890
4.5.2.17 Last
Last
Last
( void ) Description: This function returns the last selected ID in a sort object. Input: None Output: None Return Code: Any Positive Number FE_FAIL Remarks/Usage: The last ID is the last ID in the object, either the first added, or the first after a sort. Calling this method is the same as calling Reset( ) followed by Prev( ). When you retrieve the ID, the properties dRealX, nIntX and eDataType are all udpated to match the values associated with that ID. Example: None The last ID. No IDs were available.
Count
API-891
4.5.2.18 Count
Count
( void ) Description: This function counts the number of IDs that are currently selected in the object. Input: None Output: None Return Code: count Remarks/Usage: This function simply looks at each of the selected IDs and counts the number that it finds. Example: None The number of IDs in the object.
API-892
4.5.2.19 Select
Select
Select
( entityTYPE, reload, title ) Description: This function displays a standard selection dialog box to allow a user to choose entities of a specific type and create a sort object. Input: INT4 entityTYPE BOOL reload STRING title Output: None Return Code: FE_CANCEL FE_NOT_EXIST Remarks/Usage: The final selection list contains all of the IDs that were selected when the user pressed OK. If clear=True, these are all entities that were just selected. If clear=False, it is a combination of old and new entities. Example: None The user cancelled the selection. No entities of the selected type exist. None were selected and the dialog box was not displayed. If clear=True, the sort object will be empty. Type of entity to select. For more information, see Section 3.3.6, "Entity Types". If True, previously selected IDs will be displayed in the dialog box for editing, or for combining with new selections. A text string that will be added to the title bar of the dialog box to give the user more information about what is being selected.
SelectID
API-893
4.5.2.20 SelectID
SelectID
( entityTYPE, title, ID ) Description: This function displays a selection dialog box to allow a user to choose a single entity of a specific type. The ID of the entity is returned and is stored in the current sort object. Input: INT4 entityTYPE STRING title Output: INT4 ID Return Code: FE_CANCEL FE_NOT_EXIST Remarks/Usage: This function displays one of two different dialog boxes, depending on the entity type that you choose. For entities that have titles, like properties or materials, the dialog box will contain a list of the available entities along with their titles. For other entities, like nodes or elements, a simple dialog box is displayed so that the ID can be typed or picked. Example: None The user cancelled the selection. No entities of the selected type exist. None were selected and the dialog box was not displayed. If clear=True, the sort object will be empty. The ID of the entity that was selected. Type of entity to select. For more information, see Section 3.3.6, "Entity Types". A text string that will be added to the title bar of the dialog box to give the user more information about what is being selected.
API-894
SelectList
4.5.2.21 SelectList
SelectList
( nNumEntity, entityTYPE ) Description: This function displays a selection dialog box to allow a user to choose a specified number of entities of a specific type. The IDs of the selected entities are stored in the current sort set. Input: INT4 nNumEntity INT4 entityTYPE Output: None Return Code: FE_CANCEL Remarks/Usage: The dialog box automatically closes when nNumEntity entities have been selected. Example: None The user cancelled the selection. Number of entities to be selected. Type of entity to select. For more information, see Section 3.3.6, "Entity Types".
Sort
API-895
4.5.2.22 Sort
Sort
( bSortReal ) Description: This function sorts the IDs in the object based on values associated with each ID Input: BOOL bSortReal Output: None Return Code: FE_FAIL Remarks/Usage: Sorting is always done in increasing order, and always using all three values. If bSortReal is True, then the primary sort value is dReal1, the second is dReal2 and third is dReal3. The same approach follows for nInt1, nInt2, and nInt3. Even though sorting is always done in one direction, you can traverse the list in either direction using either Next( ) or Prev( ), so you can still retrieve IDs in decreasing order. Example: None No IDs are available for sorting If True, the IDs are sorted based on the dRealX values, if False, the sort is based on the nIntX values.
API-896
SortRemoveDuplicates
4.5.2.23 SortRemoveDuplicates
SortRemoveDuplicates
( bSortReal ) Description: This function is the same as Sort( ) except it also removes duplicate entries from the sorted object, leaving just one of each unique entry. Input: BOOL bSortReal Output: None Return Code: FE_FAIL Remarks/Usage: Sorting is always done in increasing order, and always using all three values. If bSortReal is True, then the primary sort value is dReal1, the second is dReal2 and third is dReal3. The same approach follows for nInt1, nInt2, and nInt3. Even though sorting is always done in one direction, you can traverse the list in either direction using either Next( ) or Prev( ), so you can still retrieve IDs in decreasing order. Example: None No IDs are available for sorting If True, the IDs are sorted based on the dRealX values, if False, the sort is based on the nIntX values.
ConvertToBoundarySurfaces
API-897
4.5.2.24 ConvertToBoundarySurfaces
ConvertToBoundarySurfaces
( void ) Description: This function replaces surfaces that are used to define Combined Surfaces with the Combined Surface. Input: None Output: None Return Code: FE_OK Remarks/Usage: If any Surfaces used to define Combined Surfaces are in the Sort Set, then those surfaces are removed, and the Combined Surfaces are added. Other Surfaces, either Combined Surfaces themselves, or surfaces not used to define Combined Surfaces are not changed in the Sort Set. Example: None Expanded Set
API-898
4.6 UserData Objects
The UserData object is used to store your own data in the FEMAP database. You can think of each UserData object as a binary file, where you can read and write any data that you need to keep with a model. Even though you can always store data in your own external files, UserData objects provide some very beneficial features. Your data is stored in the same file as the other model data. This eliminates many file/data management issues, and possibilities for errors. Data stored in the same model is always available to that model, and cannot be mixed with other models. Possibly more importantly, however, data stored in UserData objects is supported through the FEMAP Undo/Redo system. If your data is linked to the current model state, then rolling the model back through undo will also roll back your data. This only applies to model that is in the database, not data that is already loaded into a UserData Object. Following an Undo/Redo, you must destroy any objects that you are holding, and reload them from the database. Use the feUserData method of the FEMAP Application object to create UserData Objects.
Get
API-899
Get
( entID ) Description: Loads a data object that was previously stored with this entID. Input: INT4 entID Output: None Return Code: FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: You must call this function, or GetTitle( ), to reload objects that have been stored in the model. Example: None Unable to load the data object. Either it does not exist, or there is no data in it. Unable to allocate memory for data buffering. The entity ID of the data object that will be loaded.
API-900
4.6.2.2 GetTitle
GetTitle
GetTitle
( title ) Description: Loads a data object that was previously stored with this title. Input: STRING title[0..159] Output: None Return Code: FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: To use this method to retrieve an object, it must have had its title property defined prior to being Put to the database. The title specified here must be an exact match, including case, to the title specified when the object was stored. Using titles to store and retrieve data objects can eliminate conflicts between data stored from various programs. Example: None Unable to load the data object. Either it does not exist, or there is no data in it. Unable to allocate memory for data buffering. The title of the object to load.
Put
API-901
4.6.2.3 Put
Put
( entID ) Description: Stores data from the current data object. Input: INT4 entID Output: None Return Code: FE_FAIL Remarks/Usage: You must set the title property prior to using this method if you want to use GetTitle to retrieve the object. You do not have to set the title if you plan on using Get to retrieve the object. Using this method will always overwrite any data that was previously stored with the same entID - even if it was not from your program - for that reason we recommend using PutTitle - with unique titles - whenever possible. Data must be Put to the model database before it will be kept with the model, and before it will be supported by Undo/Redo. Example: None Unable to store the data object. The ID of the object to store.
API-902
4.6.2.4 PutTitle
PutTitle
PutTitle
( title ) Description: Stores data from the current data object. Input: STRING title[0..159] Output: None Return Code: FE_FAIL Remarks/Usage: There is no need to set the title property prior to using this method - that is done automatically. This method will automatically find and overwrite any previous data with the same title - you should always specify a unique title to avoid this possibility - or use GetTitle to test if there is other data using the same title. If no data object exists in the database with a matching title, this method simply finds an unused ID and stores the object. Data must be Put to the model database before it will be kept with the model, and before it will be supported by Undo/Redo. Example: None Unable to store the data object. The title of the object to store.
Clear
API-903
4.6.2.5 Clear
Clear
( void ) Description: This function simply removes all data from the current UserData object. Input: None Output: None Return Code: None Remarks/Usage: None Example: None
API-904
4.6.2.6 Reset
Reset
Reset
( void ) Description: This method resets the Next pointer so that the next call to Next will return the first (lowest ID) UserData. Input: None Output: None Return Code: None Remarks/Usage: After calling Reset, Next will return the first entity and Prev will return the last (highest ID) UserData. Example: None
Next
API-905
4.6.2.7 Next
Next
( void ) Description: This method retrieves the next available UserData with a larger ID. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method simply finds the next available UserData with an ID that is greater than the current ID, and calls the Get method with that ID. Example: None No additional entities were found.
API-906
4.6.2.8 Prev
Prev
Prev
( void ) Description: This method retrieves the next available UserData with a smaller ID. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method simply finds the next available UserData with an ID that is smaller than the current ID, and calls the Get method with that ID. Example: None No additional entities were found.
First
API-907
4.6.2.9 First
First
( void ) Description: This method loads the first (with the lowest ID) available UserData. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method is like calling Reset, followed by Next. Example: None No entities exist, or unable to load.
API-908
4.6.2.10 Last
Last
Last
( void ) Description: This method loads the last (with the highest ID) available UserData. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method is like calling Reset, followed by Prev. Example: None No entities exist, or unable to load.
NextSet
API-909
4.6.2.11 NextSet
NextSet
( void ) Description: This method updates the setID to be the next existing UserData object. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: If no more sets are found, setID remains unchanged. This method finds the next set with a higher ID. Example: None No more sets available.
API-910
PrevSet
4.6.2.12 PrevSet
PrevSet
( void ) Description: This method updates the setID to be the previous existing UserData object. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: If no more sets are found, setID remains unchanged. This method finds the next UserData with a lower ID. Example: None No more sets available.
NextEmptySet
API-911
4.6.2.13 NextEmptySet
NextEmptySet
( void ) Description: This method updates the setID to be the next empty UserData object. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: If no more empty sets are found, setID remains unchanged. This method finds the next setID that does not contain any UserData. Example: None No more sets available.
API-912
PrevEmptySet
4.6.2.14 PrevEmptySet
PrevEmptySet
( void ) Description: This method updates the setID to be the previous empty UserData object. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: If no more empty sets are found, setID remains unchanged. This method finds the previous setID that does not contain any UserData. Example: None No more sets available.
Exist
API-913
4.6.2.15 Exist
Exist
( id ) Description: This method checks to see if a specific UserData exists Input: INT4 id Output: None Return Code: FE_FAIL Remarks/Usage: This method does not load any data. It simply returns FE_OK if the UserData exists, and FE_FAIL if it does not. Example: None The selected entity does not exist. The ID of the UserData to check.
API-914
Deletable
4.6.2.16 Deletable
Deletable
( id ) Description: This method checks to see if a specific UserData is deletable Input: INT4 id Output: None Return Code: None Remarks/Usage: This method is currently not used. It will always return FE_OK. Example: None The ID of the UserData to check.
Delete
API-915
4.6.2.17 Delete
Delete
( entID ) Description: Deletes the data object from the database with the specified ID. Input: INT4 entID Output: None Return Code: FE_FAIL Remarks/Usage: Deleting a data object is permanent. The data is removed from the database; however, the data can return if you undo past the point of the deletion. Example: None Unable to delete the data object. The ID of the object to delete.
API-916
DeleteTitle
4.6.2.18 DeleteTitle
DeleteTitle
( title ) Description: Deletes the data object from the database with the specified title. Input: STRING title[0..159] Output: None Return Code: FE_FAIL Remarks/Usage: Deleting a data object is permanent. The data is removed from the database; however, the data can return if you undo past the point of the deletion. Example: None Unable to delete the data object. The title of the object to delete.
Position
API-917
4.6.2.19 Position
Position
( void ) Description: Returns the current location in the data object where you are reading or writing. Input: None Output: None Return Code: INT4 position Remarks/Usage: This function can be used with Jump to reposition to a specific object location for rereading or rewriting. Example: None The current data object location.
API-918
4.6.2.20 Jump
Jump
Jump
( jumpto ) Description: Repositions the location in the data object where the next read or write will occur. Input: INT4 jumpto Output: None Return Code: FE_FAIL Remarks/Usage: You should only specify jumpto as a value that you previously retrieved from a call to Position. Computing numbers yourself is prone to error because of extra data need to store arrays and certain data types. Example: None Unable to move to the specified location. Position must be less than the total size of data in the object. The position to move to. Specify jumpto=-1 to move to the end of the object, or jumpto=0 to move to the beginning of the object.
AtEOF
API-919
4.6.2.21 AtEOF
AtEOF
( void ) Description: Indicates whether the current position for reading/writing is at the end of the data in the object. Input: None Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: You can use this check to determine when you reach the end of the data in an object. Example: None At the end of the object. If you are reading from the object, you should stop at this point. Writes will append to the object. Not at the end of the object. You can continue reading. Writes will overwrite previous data.
API-920
Truncate
4.6.2.22 Truncate
Truncate
( position ) Description: Deletes all data in an object after the specified position. Input: INT4 position Output: None Return Code: FE_FAIL Remarks/Usage: Truncating data in an object only changes the current object. Changes must be Put to the database to be made permanent. The current reading/writing position is moved to the end of the object (position) following this method. Example: None Unable to truncate, position probably not between 0 and the size of data in the object. The position to truncate the data in the object. Essentially the size of the data in the remaining object.
WriteDouble
API-921
4.6.2.23 WriteDouble
WriteDouble
( val ) Description: Writes a single double value to the current object. Input: REAL8 val Output: None Return Code: FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified value will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The value to add to the current object.
API-922
WriteFloat
4.6.2.24 WriteFloat
WriteFloat
( val ) Description: Writes a single float value to the current object. Input: REAL4 val Output: None Return Code: FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified value will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The value to add to the current object.
WriteLong
API-923
4.6.2.25 WriteLong
WriteLong
( val ) Description: Writes a single long value to the current object. Input: INT4 val Output: None Return Code: FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified value will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The value to add to the current object.
API-924
WriteShort
4.6.2.26 WriteShort
WriteShort
( val ) Description: Writes a single short value to the current object. Input: INT2 val Output: None Return Code: FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified value will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The value to add to the current object.
WriteBool
API-925
4.6.2.27 WriteBool
WriteBool
( val ) Description: Writes a single bool value to the current object. Input: BOOL val Output: None Return Code: FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified value will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The value to add to the current object.
API-926
WriteDoubleArray
4.6.2.28 WriteDoubleArray
WriteDoubleArray
( num, val ) Description: Writes an array of double values to the current object. Input: INT4 num REAL8 val[0..num-1] Output: None Return Code: FE_TOO_SMALL FE_BAD_TYPE FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified values will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None The array that you specified is not large enough for the number of entries that you specified. The type of data in the array that you passed is not of the type required for this method. Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The number of entries in the val array that you want to write. The values to add to the current object.
WriteLongArray
API-927
4.6.2.29 WriteLongArray
WriteLongArray
( num, val ) Description: Writes an array of long values to the current object. Input: INT4 num INT4 val[0..num-1] Output: None Return Code: FE_TOO_SMALL FE_BAD_TYPE FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified values will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None The array that you specified is not large enough for the number of entries that you specified. The type of data in the array that you passed is not of the type required for this method. Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The number of entries in the val array that you want to write. The values to add to the current object.
API-928
WriteBoolArray
4.6.2.30 WriteBoolArray
WriteBoolArray
( num, val ) Description: Writes an array of bool values to the current object. Input: INT4 num BOOL val[0..num-1] Output: None Return Code: FE_TOO_SMALL FE_BAD_TYPE FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified values will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None The array that you specified is not large enough for the number of entries that you specified. The type of data in the array that you passed is not of the type required for this method. Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The number of entries in the val array that you want to write. The values to add to the current object.
WriteString
API-929
4.6.2.31 WriteString
WriteString
( val ) Description: Writes a character string to the current object. Input: STRING val[0..length] Output: None Return Code: FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified values will be added to the object at the current position. You can change this position with the Position method prior to calling this method. Data that is added to the object, with any of the write methods, is not be saved to the model database until you call Put or PutTitle. Example: None Unable to allocate enough memory to add the specified value. Invalid size for the data specified. The string to add to the current object.
API-930
ReadDouble
4.6.2.32 ReadDouble
ReadDouble
( val ) Description: Reads a single double value from the current object. Input: None Output: REAL8 val Return Code: FE_NOT_AVAILABLE FE_INVALID Remarks/Usage: The specified value will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Invalid size for the data specified. The value to read from the current object
ReadFloat
API-931
4.6.2.33 ReadFloat
ReadFloat
( val ) Description: Reads a single float value from the current object. Input: None Output: REAL4 val Return Code: FE_NOT_AVAILABLE FE_INVALID Remarks/Usage: The specified value will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Invalid size for the data specified. The value to read from the current object.
API-932
ReadLong
4.6.2.34 ReadLong
ReadLong
( val ) Description: Reads a single long value from the current object. Input: None Output: INT4 val Return Code: FE_NOT_AVAILABLE FE_INVALID Remarks/Usage: The specified value will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Invalid size for the data specified. The value to read from the current object.
ReadShort
API-933
4.6.2.35 ReadShort
ReadShort
( val ) Description: Reads a single short value from the current object. Input: None Output: INT2 val Return Code: FE_NOT_AVAILABLE FE_INVALID Remarks/Usage: The specified value will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Invalid size for the data specified. The value to read from the current object.
API-934
ReadBool
4.6.2.36 ReadBool
ReadBool
( val ) Description: Reads a single bool value from the current object. Input: None Output: BOOL val Return Code: FE_NOT_AVAILABLE FE_INVALID Remarks/Usage: The specified value will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Invalid size for the data specified. The value to read from the current object.
ReadDoubleArray
API-935
4.6.2.37 ReadDoubleArray
ReadDoubleArray
( num, val ) Description: Reads an array of double values from the current object. Input: None Output: INT4 num REAL8 val[0..num-1] Return Code: FE_NOT_AVAILABLE FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified values will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Unable to allocate enough memory to read the specified values. Invalid size for the data specified. The number of items in the array that is read. The values from the current object.
API-936
ReadLongArray
4.6.2.38 ReadLongArray
ReadLongArray
( num, val ) Description: Reads an array of long values from the current object. Input: None Output: INT4 num INT4 val[0..num-1] Return Code: FE_NOT_AVAILABLE FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified values will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Unable to allocate enough memory to read the specified values. Invalid size for the data specified. The number of items in the array that is read. The values from the current object.
ReadBoolArray
API-937
4.6.2.39 ReadBoolArray
ReadBoolArray
( num, val ) Description: Reads an array of bool values from the current object. Input: None Output: INT4 num BOOL val[0..num-1] Return Code: FE_NOT_AVAILABLE FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified values will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Unable to allocate enough memory to read the specified values. Invalid size for the data specified. The number of items in the array that is read. The values from the current object.
API-938
ReadString
4.6.2.40 ReadString
ReadString
( val ) Description: Reads a text string from the current object. Input: None Output: STRING val[0..length] Return Code: FE_NOT_AVAILABLE FE_NO_MEMORY FE_INVALID Remarks/Usage: The specified values will be read from the object at the current position. You can change this position with the Position method prior to calling this method. Data can be read from an object after a call to Get, or after data has been added to the object with one or more Write calls (and the position has been relocated before the data). Example: None There is not enough data left in the object to read, from the current position. Unable to allocate enough memory to read the specified values. Invalid size for the data specified. The string to read from the current object.
API-939
All of the following methods are available from the FEMAP application object, and return the object that they create.
Entity Objects
Method feAnalysisCase (Section 5.2, "AnalysisCase Objects") feAnalysisSet (Section 5.3, "AnalysisSet and AnalysisMgr Objects") feBCDefinition (Section 5.4, "BCDefinition Objects") feBCEqn (Section 5.5, "BCEqn Objects") Description Creates an AnalysisCase Object Creates an AnalysisSet Object Creates a BCDefinition Object Creates a BCEqn Object BCSet.NextBCDef BCSet.NextBC, BCDefinition.NextBC BCSet.NextBC, BCDefinition.NextBC Other Methods AnalysisSet.Case
API-940
Method feBCNode (Section 5.7, "BCNode Objects") Description Creates a BCNode Object Other Methods BCSet.NextBC, BCDefinition.NextBC
feBCSet (Section 5.8, "BCSet Objects") feConnectionProp (Section 5.9, "Connection Property Objects") feConnectionRegion (Section 5.10, "Connection Region Objects") feConnection (Section 5.11, "Connection Objects") feCSys (Section 5.12, "CSys Objects") feCurve (Section 5.13, "Curve Objects") feDataSurface (Section 5.14, "Data Surface Objects") feElem (Section 5.15, "Element Objects") feFunction (Section 5.16, "Function Objects") feGFXArrow (Section 5.17, "GFXArrow Objects") feGFXLine (Section 5.18, "GFXLine Objects") feGFXPoint (Section 5.19, "GFXPoint Objects") feGFXQuad4 (Section 5.20, "GFXQuad4 Objects") feGFXTria3 (Section 5.21, "GFXTria3 Objects") feGlobalPly (Section 5.22, "GlobalPly Objects") feGroup (Section 5.23, "Group Objects") feLayer (Section 5.24, "Layer Objects") feLayup (Section 5.25, "Layup Objects") feLoadBolt (Section 5.26, "LoadBolt Object") feLoadDefinition (Section 5.27, "LoadDefinition Objects")
Creates a BCSet Object Creates a Connection Property Creates a Connection Region / Contact Object Creates a Connection Creates a CSys Object Creates a Curve Object Creates a Data Surface Object Creates an Element Object Creates a Function Object Creates a GFXArrow Object Creates a GFXLine Object Creates a GFXPoint Object Creates a GFXQuad4 Object Creates a GFXTria3 Object Creates a GlobalPly Object Creates a Group Object Creates a Layer Object Creates a Layup Object Creates a LoadBolt Object Creates a LoadDefinition Object LoadSet.NextLoadDef Prop.Layup Connection.Prop feContact
API-941
Method feLoadETemp (Section 5.28, "LoadETemp Objects") feLoadGeom (Section 5.29, "LoadGeom Objects") feLoadMesh (Section 5.30, "LoadMesh Objects") feLoadNTemp (Section 5.31, "LoadNTemp Objects") feLoadSet (Section 5.32, "LoadSet Objects") feMapOutput (Section 5.33, "MapOutput Objects") feMatl (Section 5.34, "Material Objects") feNode (Section 5.35, "Node Objects") feOptim (Section 5.36, "Optim Objects") feOutput (Section 5.37, "Output Objects") Description Creates a LoadETemp Object Creates a LoadGeom Object Other Methods LoadSet.NextLoad, LoadDefinition.NextLoad LoadSet.NextLoad, LoadDefinition.NextLoad LoadSet.NextLoad, LoadDefinition.NextLoad LoadSet.NextLoad, LoadDefinition.NextLoad
Creates a LoadNTemp Object Creates a LoadSet Object Creates a MapOutput Object Creates a Material Object Creates a Node Object Creates an Optimization Object Creates an Output Object
Element.Matl, Prop.Matl
feOutputSet (Section 5.38, "OutputSet Objects") fePoint (Section 5.39, "Point Objects") feProp (Section 5.40, "Property Objects") feReport (Section 5.41, "Report Objects") feSolid (Section 5.42, "Solid Objects") feSurface (Section 5.43, "Surface Objects") feText (Section 5.44, "Text Objects") feTMGBC (Section 5.45, "TMGBC Objects") feTMGCtrl (Section 5.46, "TMGCtrl Objects")
Creates an OutputSet Object Creates a Point Object Creates a Property Object Creates a Report Object Creates a Solid/Volume Object Creates a Surface Object Creates a Text Object Creates a TMGBc Object Creates a TMGCtrl Object
Element.Prop
API-942
Method feTMGInt (Section 5.47, "TMGInt Objects") feTMGOpt (Section 5.48, "TMGOpt Objects") feTMGReal (Section 5.49, "TMGReal Objects") feVar (Section 5.50, "Variable Objects") feView (Section 5.51, "View Objects") Description Creates a TMGInt Object Creates a TMGOpt Object Creates a TMGReal Object Creates a Var Object Creates a View Object Other Methods
Other Objects
Method feUserData (Section 4.6, "UserData Objects")
Example of Creating an Object
Other Methods
The following shows a sample (in Basic) of how to create a Node object, and use it to retrieve Node 100, update its X coordinate, and save the updated location in your model. This example assumes that FEMAP is running and has a model that contains Node 100. Sub Main Dim App As femap.model Set App = GetObject(, "femap.model") Dim nd As Object Set nd = App.feNode rc nd.x rc End Sub
Destroying an Object Objects are destroyed automatically when your application ends. However, you can, and should, destroy them yourself as soon as you are done using them. By destroying objects sooner, you will minize the amount of memory that is required at any one time by your application and by FEMAP.
From Basic, you can destroy an object simply by changing its value. For example, if you had: Dim femap As Object Set femap = GetObject(, "femap.model") Dim nd As Object Set nd = femap.feNode ... Set nd = femap.feNode ...
API-943
The first nd object was destroyed as soon as you made the second Set statement. This, however, creates a second node object that will be destroyed when your application terminates. Similarly, you can do the following: Dim femap As Object Set femap = GetObject(, "femap.model") Dim nd As Object Set nd = femap.feNode ... Set nd = Nothing ... This destroys the nd object without creating another.
API-944
5.1 Common Entity Properties and Methods
Entity objects are ones that contain the data that is part of your FEMAP model. This includes nodes, elements, materials, properties, points, and curves. All of the properties and methods described here can be accessed from any entity object, no matter what its type. As you will see, most of these methods deal with traversing the entities in the model, or retrieving or storing entity data. You will find properties and methods that are specific to an entity type documented with that object.
INT4 SetID
INT4 Active
Get
API-945
Get
( id ) Description: This method retrieves an entity from your model database with the specified ID. Input: INT4 id Output: None Return Code: FE_FAIL Remarks/Usage: This method retrieves the data for the selected entity and updates the ID property. Example: None The specified entity does not exist. ID of the entity to retrieve. If you specify id=0, then the current value of the ID property will be used instead.
API-946
GetLibrary
5.1.2.2 GetLibrary
GetLibrary
( libINDEX ) Description: This method retrieves an entity from the associated library. Input: The index of the entity stored in the library. The first entity stored is libINDEX = 0, the second has libINDEX = 1, and so on. If you specify libINDEX = -1, a dialog box will be displayed showing all entities in the library, and will allow the user to select the entity to load.
INT4 libINDEX
Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None This function is only available for entity types that have libraries (Material, Property, View, etc.). If you call this method from another entity type, it will fail.
Put
API-947
5.1.2.3 Put
Put
( id ) Description: This method stores an entity in the model database with the specified ID. Input: INT4 id Output: None Return Code: FE_FAIL Remarks/Usage: All of the data that has been currently loaded/updated is stored as the entity with the specified ID. The ID where you store the data does not have to be the same as the ID that you used in a previous Get. For example, calling Get(3), then Put(6), creates a new entity with an ID of 6 that is a copy of entity 3. Example: None Unable to store the entity with the specified ID. The ID of the entity to store. If you specify id=0, then the current value of the ID property will be used instead.
API-948
PutLibrary
5.1.2.4 PutLibrary
PutLibrary
( void ) Description: This method stores an entity in the associated library. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: For most entity types, the current data that you have loaded into the object can be stored directly to the library. There is no need to necessarily store it in the model database. For several entity types, such as functions and analysis sets, the object must first be stored in the database. For these entities, it is actually the data from the database that is written to the library, not the data in the current object. The ID of the current object must identify the database entity that you want written in the library. Example: None This function is only available for entity types that have libraries (Material, Property, View, etc.). If you call this method from another entity type, it will fail.
GetTitleList
API-949
5.1.2.5 GetTitleList
GetTitleList
( minID, maxID, count, listID, listTITLE ) Description: This method retrieves two arrays which contain the IDs and titles of all entities (in the selected ID range) with the same type as the current object. Input: INT4 minID INT4 maxID Output: INT4 count INT4 listID[0..count-1] STRING listTITLE[0..count-1] Return Code: FE_FAIL Remarks/Usage: This method is identical to calling GetTitleIDList( False, ....). See that method for more information. Example: This function is only available for entity types that have titles (Material, Property, View, etc.). If you call this method from another entity type, it will fail. The number of entities retrieved. This is the number of entries in listID and listTITLE. The IDs of the available entities. The titles of the available entities. If the entity does not have a title, the string Untitled will be returned. The minimum and maximum entity IDs to retrieve. You can set minID=maxID=0 to retrieve all available entities.
API-950
GetTitleIDList
5.1.2.6 GetTitleIDList
GetTitleIDList
( bIncludeID, minID, maxID, count, listID, listTITLE ) Description: This method retrieves two arrays which contain the IDs and titles of all entities (in the selected ID range) with the same type as the current object. Input: BOOL bIncludeID INT4 minID INT4 maxID Output: INT4 count INT4 listID[0..count-1] STRING listTITLE[0..count-1] Return Code: FE_FAIL Remarks/Usage: This method is somewhat different than the other entity methods. It does not really operate on, or tell about the current entity. It simply uses it to select the type of entity that you are interested in, and to choose the setID of interest for certain entity types - like output objects. Calling this method with bIncludedID=False, is the same as calling GetTitleList( ) Example: This function is only available for entity types that have titles (Material, Property, View, etc.). If you call this method from another entity type, it will fail. The number of entities retrieved. This is the number of entries in listID and listTITLE. The IDs of the available entities. The titles of the available entities. If the entity does not have a title, the string Untitled will be returned. If True, the titles are in the form ID..title (for example, 1..Steel. If False, only the title, without the ID or separator is returned. The minimum and maximum entity IDs to retrieve. You can set minID=maxID=0 to retrieve all available entities.
GetTitleIDList
API-951
GetTitleIDList
( bIncludeID, minID, maxID, count, listID, listTITLE ) Attach to FEMAP........................ Dim femap As Object Set femap = GetObject(, "femap.model") Look at Output Set 3................... Dim oc As Object Set oc = femap.feOutputSet() oc.Get (3) Dim od As Object Set od = oc.Vector(1) Dim Dim Dim Dim Dim rc As Integer Count As Long ID As Variant Title As Variant Row As Integer
Retrieve ID and Title of all available Output Vectors... rc = od.GetTitleIDList(False, 0, 0, Count, ID, Title) Display list in cells of a spreadsheet................. For Row = 1 To Count Worksheets(1).Cells(Row, 1).Value = ID(Row - 1) Worksheets(1).Cells(Row, 2).Value = Title(Row - 1) Next Row
API-952
ParseTitleID
5.1.2.7 ParseTitleID
ParseTitleID
( sTitleID ) Description: Returns the ID from a string that was formatted by GetTitleIDList in the form ID..title Input: STRING sTitleID Output: None Return Code: ID Remarks/Usage: None Example: This is the ID contained in the string. 0 if the string has the wrong format. This must be a string in the format ID..title
ParseTitleID
API-953
ParseTitleID
( sTitleID ) Sub ListOutputVectors() 'Attach to FEMAP........................ Dim femap As Object Set femap = GetObject(, "femap.model") 'Look at Output Set 3................... Dim oc As Object Set oc = femap.feOutputSet() oc.Get (1) Dim od As Object Set od = oc.Vector(1) Dim Dim Dim Dim Dim rc As Integer Count As Long ID As Variant Title As Variant Row As Integer
'Retrieve ID and Title of all available Output Vectors... rc = od.GetTitleIDList(True, 0, 0, Count, ID, Title) ' Display list in cells of a spreadsheet................. For Row = 1 To Count Worksheets(1).Cells(Row, 1).Value = _ od.ParseTitleID(Title(Row - 1)) Worksheets(1).Cells(Row, 2).Value = Title(Row - 1) Next Row End Sub
API-954
5.1.2.8 Exist
Exist
Exist
( id ) Description: This method checks to see if a specified entity currently exists. Input: INT4 id Output: None Return Code: FE_FAIL Remarks/Usage: This method does not load any data. It simply returns FE_OK if the entity exists, and FE_FAIL if it does not. Example: None The selected entity does not exist. The ID of the entity to check. If you specify id=0, then the current value of the ID property will be used instead.
Deletable
API-955
5.1.2.9 Deletable
Deletable
( id ) Description: This method checks to see if an entity can be deleted. Input: INT4 id Output: None Return Code: FE_FAIL Remarks/Usage: Entities are deletable only if there are no other entities in the model that require them to exist. For example, nodes cannot be deleted until after all elements that reference them have been deleted. Example: None The entity is not deletable. The ID of the entity to check. If you specify id=0, then the current value of the ID property will be used instead.
API-956
5.1.2.10 Delete
Delete
Delete
( id ) Description: This method deletes an entity from the model database. Input: INT4 id Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: Entities are not deletable if there are other entities in the FEMAP model that require them to exist. Certain objects, like LoadSet and BCSet objects, will also automatically delete all of the other entities that they contain if you delete them. For example, if you delete a LoadSet, all of the individual loads on nodes, elements or geometry in that set will also be deleted. Example: None The entity was deleted. The entity could not be deleted. The ID of the entity to delete. If you specify id=0, then the current value of the ID property will be used instead.
DeleteLibrary
API-957
5.1.2.11 DeleteLibrary
DeleteLibrary
( libINDEX ) Description: This method deletes an entity from the associated library. Input: The index of the entity stored in the library. The first entity stored is libINDEX = 0, the second has libINDEX = 1, and so on. If you specify libINDEX = -1, a dialog box will be displayed showing all entities in the library, and will allow the user to select the entity to delete.
INT4 libINDEX
Output: None Return Code: FE_FAIL Remarks/Usage: You must use this method with caution. There is no option to allow the user to confirm the deletion and no option to undo the operation. Once entities are deleted from a library, they cannot be recovered. Example: None This function is only available for entity types that have libraries (Material, Property, View, etc.). If you call this method from another entity type, it will fail.
API-958
5.1.2.12 Reset
Reset
Reset
( void ) Description: This method resets the Next pointer so that the next call to Next will return the first (lowest ID) entity. Input: None Output: None Return Code: None Remarks/Usage: After calling Reset, Next will return the first entity and Prev will return the last (highest ID) entity. Example: None
Next
API-959
5.1.2.13 Next
Next
( void ) Description: This method retrieves the next available entity with a larger ID. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method simply finds the next available entity with an ID that is greater than the current ID, and calls the Get method with that ID. Example: None No additional entities were found.
API-960
NextInSet
5.1.2.14 NextInSet
NextInSet
( setID ) Description: This method retrieves the next available entity with a larger ID that is referenced in the Set. Input: INT4 setID Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method simply finds the next available entity that is in the specified Set object that has an ID that is greater than the current ID, and calls the Get method with that ID. So, to start at the beginning of the Set, first call the Reset() method on the current entity (not on the Set), or call FirstInSet() Example: None No additional entities were found. The ID of a Set object that contains the IDs of the entities that you want to iterate through.
Prev
API-961
5.1.2.15 Prev
Prev
( void ) Description: This method retrieves the next available entity with a smaller ID. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method simply finds the next available entity with an ID that is smaller than the current ID, and calls the Get method with that ID. Example: None No additional entities were found.
API-962
5.1.2.16 First
First
First
( void ) Description: This method loads the first (with the lowest ID) available entity. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method is like calling Reset, followed by Next. Example: None No entities exist, or unable to load.
FirstInSet
API-963
5.1.2.17 FirstInSet
FirstInSet
( setID ) Description: This method loads the first (with the lowest ID) available entity that is referenced in the Set. Input: INT4 setID Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method is like calling Reset, followed by NextInSet() Example: None No entities exist, or unable to load. The ID of the set that contains the entities that you want to iterate through.
API-964
5.1.2.18 Last
Last
Last
( void ) Description: This method loads the last (with the highest ID) available entity. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: Calling this method is like calling Reset, followed by Prev. Example: None No entities exist, or unable to load.
NextSet
API-965
5.1.2.19 NextSet
NextSet
( void ) Description: This method updates the setID to be the next set that contains entities of this type. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: If no more sets are found, setID remains unchanged. This method finds the next set with a higher ID. Example: None No more sets available.
API-966
PrevSet
5.1.2.20 PrevSet
PrevSet
( void ) Description: This method updates the setID to be the previous set that contains entities of this type. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: If no more sets are found, setID remains unchanged. This method finds the next set with a lower ID. Example: None No more sets available.
NextEmptySet
API-967
5.1.2.21 NextEmptySet
NextEmptySet
( void ) Description: This method updates the setID to be the next set of this entity type that is empty. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: If no more empty sets are found, setID remains unchanged. This method finds the next set with a higher ID. Example: None No more sets available.
API-968
PrevEmptySet
5.1.2.22 PrevEmptySet
PrevEmptySet
( void ) Description: This method updates the setID to be the previous set of this entity type that is empty. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: If no more empty sets are found, setID remains unchanged. This method finds the next set with a lower ID. Example: None No more sets available.
NextID
API-969
5.1.2.23 NextID
NextID
( void ) Description: This method finds the ID of the next available entity with a higher ID. Input: None Output: None Return Code: ID Remarks/Usage: This method is the same as Next, except that it does not update the current ID, nor does it load the data for the entity. Example: None If return value is less than or equal to MAX_LABEL, this is the entity that was found. Otherwise, there are no more available entities.
API-970
5.1.2.24 PrevID
PrevID
PrevID
( void ) Description: This method finds the ID of the next available entity with a lower ID. Input: None Output: None Return Code: ID Remarks/Usage: This method is the same as Prev, except that it does not update the current ID, nor does it load the data for the entity. Example: None If return value is greater than or equal to 1, this is the entity that was found. Otherwise, there are no more available entities.
NextEmptyID
API-971
5.1.2.25 NextEmptyID
NextEmptyID
( void ) Description: This method finds the ID of the next nonexisting entity with a higher ID. Input: None Output: None Return Code: ID Remarks/Usage: None Example: None If return value is less than or equal to MAX_LABEL, this is the entity ID that was empty. Otherwise, there are no more available empty entities.
API-972
PrevEmptyID
5.1.2.26 PrevEmptyID
PrevEmptyID
( void ) Description: This method finds the ID of the next nonexisting entity with a lower ID. Input: None Output: None Return Code: ID Remarks/Usage: None Example: None If return value is greater than or equal to 1, this is the entity that was empty. Otherwise, there are no more available empty entities.
SelectID
API-973
5.1.2.27 SelectID
SelectID
( title ) Description: This function displays a selection dialog box to allow a user to choose a single entity of a specific type. The selected entity is automatically loaded into the calling entity. Input: STRING title Output: None Return Code: FE_CANCEL FE_NOT_EXIST Remarks/Usage: This function displays one of two different dialog boxes, depending on the entity type that you choose. For entities that have titles, like properties or materials, the dialog box will contain a list of the available entities along with their titles. For other entities, like nodes or elements, a simple dialog box is displayed so that the ID can be typed or picked. This method is the same as the SelectID method in the Set Object, however instead of simply adding the entity ID into the Set, it retrieves the selected entity. Example: None The user cancelled the selection. No entities of the selected type exist. None were selected and the dialog box was not displayed. A text string that will be added to the title bar of the dialog box to give the user more information about what is being selected.
API-974
CountSet
5.1.2.28 CountSet
CountSet
( void ) Description: Returns the number of entities in the database of the current type Input: None Output: None Return Code: Count Remarks/Usage: This function only counts entities that are in the set specified by the SetID entity property. For most entities (Curves, Surfaces, Nodes, Elements, ...) this counts all entities in the model. For other setbased entities - like Loads and Constraints - it only counts the entities in the one set, so you must specify which set you want prior to calling this function. Example: None The number of entities of the current type
API-975
5.2 AnalysisCase Objects
AnalysisCase objects correspond to the analysis cases in the analysis sets in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for AnalysisCase objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feAnalysisCase method of the FEMAP Application object to create AnalysisCase objects. Alternatively, you can create an AnalysisCase object by calling the Case method of the AnalysisSet object. This approach has the added advantage of ensuring that the case is from the correct analysis set, and preloading the case data.
Property Analysis Case Options STRING CaseTitle[80] INT4 caseID INT4 CaseType INT4 BCSet[15] or VARIANT vBCSet
Description
Title of analysis set (maximum 80 characters). ID of analysis case (Not Available for master, caseID for others). Type of analysis case (0=Normal, 1=Subcom) SetIDs of load and constraint sets for this case: [0]=Constraints, [1]=Constraint Equations, [2]=Loads, [3]=Initial Conditions, [4]=Master DOF, [5]=Base/Support DOF, [6]=Omit DOF, [7]=QSET DOF, [8]=CSET DOF, [9]=BSET DOF, [10]=Bolt Preloads, others not currently used. Output requests for this case: 0=off,-1=full model, >0=groupID, [0]=Nodal Applied Load, [1]=Nodal Reaction Force, [2]=Nodal Displacement, [3]=Nodal Velocity, [4]=Nodal Acceleration, [5]=Nodal Temperature, [6]=Nodal Heat Flux, [7]=Nodal Constraint Equation Forces, [8]=Nodal Force Balance, [9]=Nodal Kinetic Energy, [15]=Element Force, [16]=Element Stress, [17]=Element Strain, [18]=Element Plastic Strain, [19]=Element Strain Energy, [20]=Element Heat Flux, [21]=Element Enthalpy, [22]=Element Enthalpy Rate, [23]=Element Contact, [24]=Element Temperature, [25]=Kinetic Energy, [26]=Energy Loss, [27]=Fluid Pressure, others not currently used. String for ECHO option. Flag to skip standard output for this case.
API-976
Property INT4 StartText INT4 EndText INT4 Destination INT4 Imaginary INT4 CornerOutput INT4 IntegrationOutput ID of starting text. ID of ending text. Output destination: 0=Default, 1=Print, 2=Post, 3=Print+Post, 4=Punch, 5=Punch+Post. Format for complex output: 0=Magnitude/Phase, 1=Real/Imaginary. Flag to request output at element corners. Flag to request output at element integration points. Description
Analysis Case Options - ABAQUS Specific BOOL AbaHistOn REAL8 AbaHistTimePeriod REAL8 AbaHistInitTimeInc REAL8 AbaHistMinTimeInc REAL8 AbaHistMaxTimeInc INT4 AbaHistEigenvectors REAL8 AbaHistMinFreq REAL8 AbaHistMaxFreq REAL8 AbaHistShiftFreq REAL8 AbaHistScaleFactor INT4 AbaHistOutInterval BOOL AbaHistNonlinGeom BOOL AbaHistLinearPert BOOL AbaHistAutoContact BOOL AbaHistStabilize BOOL AbaHistOutZeroInc INT4 AbaHistStepAmp INT4 AbaHistStepLoad INT4 AbaHistStepConstr INT4 AbaHistAnalysisType Flag indicating ABAQUS History Options have been defined. Time period Initial time increment. Minimum time increment. Maximum time increment. Number of eigenvectors. Dynamic analysis minimum frequency. Dynamic analysis maximum frequency. Dynamic analysis shift frequency. Time step scale factor. Time step number of output intervals. Flag to specify nonlinear geometry. Flag to specify linear perturbation. Flag to specify auto contact. Flag to stabilize contact. Flag to write results for zero time increment. Step amplitude: 0=Default, 1=Step, 2=Ramp. Step loads: 0=New, 1=Modify. Step constraints: 0=New, 1=Modify. Step based analysis type (see Analysis Type property above): 0=Default=Use Analysis Type
API-977
Property BOOL AnsDOFOn BOOL AnsDOFDoSet BOOL AnsDOFAutomatic BOOL AnsDOFNoRotation INT4 AnsDOFSetID INT4 AnsDOFNumber Modal Options BOOL AnsModesOn INT4 AnsModesNumModes REAL8 AnsModesMinFreq REAL8 AnsModesMaxFreq REAL8 AnsModesModalMethod BOOL AnsModesElemResults Heat Transfer Options BOOL AnsHeatOn REAL8 AnsHeatEndTime REAL8 AnsHeatTimeStep INT4 AnsHeatOutputFreq Flag indicating Heat Transfer Options have been defined. Time at end of this load step. Initial time increment. Output step interval. Flag indicating modal expansion options have been defined. Number of modes/frequencies to expand. Minimum frequency of interest. Maximum frequency of interes.t Modal expansion method. Flag indicating whether elemental results (stresses, strains...) will be calculated. Description Flag indicating Dynamic DOF Options have been defined. Flag indicating a master DOF set is specified and in use. Indicates automatic dynamic DOF selection. Excludes rotational DOF from automatic DOF selection. Constraint set ID to be used as a master DOF set. Number of degrees of freedom to automatically select.
Analysis Case Options - MARC Specific BOOL MarHistOn INT4 MarHistContactProp INT4 MarHistCtrlMethod Flag indicating MARC History options have been defined ID of Contact Property written to the CONTACT TABLE. ID of control type written to the CONTROL option. 0=None, 1=Full Newton-Raphson, 2=Modified Newton-Raphson, 3=Strain Correction Newton-Raphson, 8=Secant Method, ID of solver type written to the SOLVER option. 0=None, 1=Profile Direct, 2=Sparse Iterative, 3=Sparse Direct, 4=Hardware Provided Sparse Direct, 5=MultiFrontal Direct Sparse. Number of Max Steps written to CONTROL option. Number of Max Recycles written to CONTROL option. Number of Min Recycles written to CONTROL option.
API-978
Property REAL8 MarHistMaxResidual Description Number of Max Conv. Residual written to CONTROL option. ID of method written to CONTROL option. 0=Rel Force Residuals, 1=Rel Disp Residuals, 2=Rel Strain Ener Res, 3=Abs Force Residuals, 4=Abs Disp Residuals, 5=Abs Strain Ener Res. Flag indicating Nonpositive Def will be used on SOLVER option. Flag indicating NonSymmetric will be used on SOLVER option. Number indicating the Min Freq for a modal analysis. Number indicating the Max Freq for a modal analysis. Number indicating the Number of eigenvectors to be found in modal analysis. ID indicating checking will be used. 0=None, 1=Strum Sequence. Flag indicating Auto Switch will be used on CONTROL option. ID indicating the Analysis type for this Subcase 1=Static, 2=Normal Modes, 3=Buckling. Number of Buckling modes. Number of Modes With positive eigenvalues. Flag indicating MARC Increment options have been defined ID indicating the Arclength Method. 0=None( AUTO STEP), 1=Crisfield, 2=Riks, 3=Modified Riks, 4=Crisfield/Modified Riks. Number indicating AUTO STEP time period. Number indicating AUTO STEP initial time increment. Number indicating AUTO STEP min time increment. Number indicating AUTO STEP max time increment. Number indicating AUTO STEP scale factor. Number indicating AUTO STEP max number of steps. Number indicating number of output intervals. Flag to include Damping scheme for statics. Number indicating AUTO INCREMENT fraction of total load applied in first step.
INT4 MarHistConvergeMeth
BOOL MarHistNonPosDefinite BOOL MarHistNonSymmetric REAL8 MarHistModalMinFreq REAL8 MarHistModalMaxFreq INT4 MarHistModalEigen INT4 MarHistChecking BOOL MarHistAutoSwitch INT4 MarHistAnalCaseSol INT4 MarHistBuckleNumModes INT4 MarHistBucklePosEigen BOOL MarIncOn INT4 MarIncArcLenMeth REAL8 MarIncTimePeriod REAL8 MarIncInitTimeInc REAL8 MarIncMinTimeInc REAL8 MarIncMaxTimeInc REAL8 MarIncScaleFact INT4 MarIncMaxStep INT4 MarIncNumOutInc BOOL MarIncQuasiStatDamp REAL8 MarIncFracFirst
API-979
Property INT4 MarIncMaxNumInc INT4 MarIncCtrlMaxRecycle REAL8 MarIncMaxFracForAll REAL8 MarIncTotalTime BOOL MarCtblOn BOOL MarCtblWrite Description Number indicating AUTO INCREMENT max num increments. Number indicating AUTO INCREMENT max recycles. Number indicating AUTO INCREMENT max fraction of load for any step. Number indicating AUTO INCREMENT total time. Flag indicating the MARC Contact Table has been defined. Flag indicating the MARC Contact Table is to be written.
Analysis Case Options - NASTRAN Specific BOOL NasOmodesOn STRING NasOmodes[160] INT4 NasSubSeqCase[200] REAL8 NasSubSeqCase[200] Flag indicating an OMODES request has been defined. Expression used to select OMODES output IDs of Subcases to be combined in this SUBCOM Scale factors applied to Subcases combined in SUBCOM
API-980
InitAnalysisCase
InitAnalysisCase
( nSetID, nCaseID ) Description: This method initializes the default values for an analysis case Input: INT32 nSetID INT32 nCaseID Output: None Return Value FE_FAIL Remarks/Usage: None Example: None Unable to initialize the case. Probably the Analysis Set you specified does not exist. The Analysis SetID containing the case to be initialized The Case ID to be initialized
GetContactTable
API-981
5.2.2.2 GetContactTable
GetContactTable
( count, rowSeg, colSeg, tieType, distTol, sepForce, friction, interClose ) Description: This method retrieves data from the Contact Table. Input: None Output: INT4 count INT4 rowSeg[0..count-1] INT4 colSeg[0..count-1] INT4 tieType[0..count-1] REAL8 distTol[0..count-1] REAL8 sepForce[0..count-1] REAL8 friction[0..count-1] REAL8 interClose[0..count-1] Return Value FE_NOT_EXIST FE_FAIL Remarks/Usage: None Example: None The contact table does not exist. Unable to allocate memory to return the contact table data. The number of entries in each of the other vectors. The IDs of the contact segments referenced in rows of the table The IDs of the contact segments referenced in columns of the table The tying type (0,1=None, 2=Touch, 3=Glue) The distance tolerance The separation force The friction values The interference closure
API-982
PutContactTable
5.2.2.3 PutContactTable
PutContactTable
( count, rowSeg, colSeg, tieType, distTol, sepForce, friction, interClose ) Description: This method replaces data in the Contact Table Input: INT4 count INT4 rowSeg[0..count-1] INT4 colSeg[0..count-1] INT4 tieType[0..count-1] REAL8 distTol[0..count-1] REAL8 sepForce[0..count-1] REAL8 friction[0..count-1] REAL8 interClose[0..count-1] Output: None Return Value FE_FAIL Remarks/Usage: This function completely replaces the contact table - it does not add to data that is already there. Example: None Unable to update the contact table. The number of entries in each of the other vectors. The IDs of the contact segments referenced in rows of the table The IDs of the contact segments referenced in columns of the table The tying type (0,1=None, 2=Touch, 3=Glue) The distance tolerance The separation force The friction values The interference closure
API-983
5.3 AnalysisSet and AnalysisMgr Objects
AnalysisSet objects correspond to the analysis sets in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for AnalysisSet objects. For more information, see Section 5.1, "Common Entity Properties and Methods". AnalysisMgr does the same thing as AnalysisSet. Use the feAnalysisSet method of the FEMAP Application object to create AnalysisSet objects. AnalysisMgr does the same thing as AnalysisSet and uses all of the same Object Properties.
Description Analysis set title (maximum 79 characters). Analysis program to be used for analysis: 0=Unknown, 4=MSC/NASTRAN, 5=ANSYS, 16=ABAQUS, 28=LS-Dyna, 29=MSC.Marc, 31=NE/Nastran, 34=FEMAP Structural. 36=NX Nastran. Type of analysis: 0=Unknown, 1=Static, 2=Modes, 3=Transient, 4=Frequency Response, 5=Response Spectrum, 6=Random, 7=Linear Buckling, 8=Design Opt, 9=Explicit, 10=Nonlinear Static, 11=Nonlinear Buckling, 12=Nonlinear Transient, 19=Comp Fluid Dynamics, 20=Steady State Heat Transfer, 21=Transient Heat, 22=Advanced Nonlinear Static, 23=Advanced Nonlinear Transient, 24=Advanced Nonlinear Explicit. Flag to launch the analysis using VisQ.
INT4 AnalysisType
BOOL LaunchWithVisQ Master Case Options STRING CaseTitle[80] INT4 CaseType INT4 BCSet[15] or VARIANT vBCSet
Title of analysis set (maximum 80 characters). 0=Normal, 1=Subcom SetIDs of load and constraint sets for this case: [0]=Constraints, [1]=Constraint Equations, [2]=Loads, [3]=Initial Conditions, [4]=Master DOF, [5]=Base/Support DOF, [6]=Omit DOF, [7]=QSET DOF, [8]=CSET DOF, [9]=BSET DOF, others not currently used.
API-984
Property Description Output requests for this case: 0=off,-1=full model, >0=groupID, [0]=Nodal Applied Load, [1]=Nodal Reaction Force, [2]=Nodal Displacement, [3]=Nodal Velocity, [4]=Nodal Acceleration, [5]=Nodal Temperature, [6]=Nodal Heat Flux, [7]=Nodal Constraint Equation Forces, [8]=Nodal Force Balance, [9]=Nodal Kinetic Energy, [15]=Element Force, [16]=Element Stress, [17]=Element Strain, [18]=Element Plastic Strain, [19]=Element Strain Energy, [20]=Element Heat Flux, [21]=Element Enthalpy, [22]=Element Enthalpy Rate, [23]=Element Contact, [24]=Element Temperature, [25]=Element Kinetic Energy, [26]=Element Energy Loss, others not currently used. String for ECHO option. Flag to skip standard output for this case. ID of starting text. ID of ending text. Output destination: 0=Default, 1=Print, 2=Post, 3=Print+Post, 4=Punch, 5=Punch+Post. Format for complex output: 0=Magnitude/Phase, 1=Real/Imaginary. Flag to request output at element corners. Flag to request output at element integration points.
STRING Echo[26] BOOL SkipStandard INT4 StartText INT4 EndText INT4 Destination INT4 Imaginary INT4 CornerOutput INT4 IntegrationOutput
Master Case Options - ABAQUS Specific BOOL AbaHistOn REAL8 AbaHistTimePeriod REAL8 AbaHistInitTimeInc REAL8 AbaHistMinTimeInc REAL8 AbaHistMaxTimeInc INT4 AbaHistEigenvectors REAL8 AbaHistMinFreq REAL8 AbaHistMaxFreq REAL8 AbaHistShiftFreq REAL8 AbaHistScaleFactor INT4 AbaHistOutInterval Flag indicating ABAQUS History Options have been defined. Time period. Initial time increment. Minimum time increment. Maximum time increment. Number of eigenvectors. Dynamic analysis minimum frequency. Dynamic analysis maximum frequency. Dynamic analysis shift frequency. Time step scale factor. Time step number of output intervals.
API-985
Property BOOL AbaHistNonlinGeom BOOL AbaHistLinearPert BOOL AbaHistAutoContact BOOL AbaHistStabilize BOOL AbaHistOutZeroInc INT4 AbaHistStepAmp INT4 AbaHistStepLoad INT4 AbaHistStepConstr INT4 AbaHistAnalysisType Description Flag to specify nonlinear geometry Flag to specify linear perturbation. Flag to specify auto contact. Flag to stabilize contact. Flag to write results for zero time increment. Step amplitude: 0=Default, 1=Step, 2=Ramp. Step loads: 0=New, 1=Modify. Step constraints: 0=New, 1=Modify. Step-based analysis type (see Analysis Type property above): 0=Default=Use Analysis Type
Master Case Options - ANSYS Specific BOOL AnsDOFOn BOOL AnsDOFDoSet BOOL AnsDOFAutomatic BOOL AnsDOFNoRotation INT4 AnsDOFSetID INT4 AnsDOFNumber ANSYS Modal Options BOOL AnsModesOn INT4 AnsModesNumModes REAL8 AnsModesMinFreq REAL8 AnsModesMaxFreq REAL8 AnsModesModalMethod BOOL AnsModesElemResults ANSYS Heat Transfer Options BOOL AnsHeatOn REAL8 AnsHeatEndTime REAL8 AnsHeatTimeStep INT4 AnsHeatOutputFreq Flag indicating heat transfer options have been defined. Time at end of this load step. Initial time increment. Output step interval. Flag indicating modal expansion options have been defined. Number of modes/frequencies to expand. Minimum frequency of interest. Maximum frequency of interest. Modal expansion method. Flag indicating whether elemental results (stresses, strains...) will be calculated. Flag indicating dynamic DOF options have been defined. Flag indicating a master DOF set is specified and in use. Indicates automatic dynamic DOF selection. Excludes rotational DOF from automatic DOF selection. Constraint set ID to be used as a master DOF set. Number of degrees of freedom to automatically select.
API-986
Property Master Case Options - DYNA Specific BOOL DynHistOn INT4 DynHistBodyLoadGrp BOOL DynHistMassDampOn REAL8 DynHistMsssDamp BOOL DynHistImplicit BOOL DynHistSpringback BOOL DynHistStrinOutput REAL8 DynHistTotalTime REAL8 DynHistTimeHistOuput REAL8 DynHistPrintHistOutput INT4 DynHistPlateIntgPts INT4 DynHistGroupHistId Flag indicating an Dyna History section has been defined. Initial Body Load Group. Flag indicating Mass Damping value has been defined. Mass Damping Value. Flag indicating use of Implicit Solver. Flag indicating Springback option has been defined. Flag indicating Strain will be output. Value defining total solution time, Number indicating output time interval. Number indicating print output time interval. Number indicating number of plate integration points. ID of group to limit output request. Description
Master Case Options - MARC Specific BOOL MarHistOn INT4 MarHistContactProp INT4 MarHistCtrlMethod Flag indicating MARC History options have been defined ID of Contact Property written to the CONTACT TABLE. ID of control type written to the CONTROL option. 0=None, 1=Full Newton-Raphson, 2=Modified Newton-Raphson, 3=Strain Correction Newton-Raphson, 8=Secant Method, ID of solver type written to the SOLVER option. 0=None, 1=Profile Direct, 2=Sparse Iterative, 3=Sparse Direct, 4=Hardware Provided Sparse Direct, 5=MultiFrontal Direct Sparse. Number of Max Steps written to CONTROL option. Number of Max Recycles written to CONTROL option. Number of Min Recycles written to CONTROL option. Number of Max Conv. Residual written to CONTROL option. ID of method written to CONTROL option. 0=Rel Force Residuals, 1=Rel Disp Residuals, 2=Rel Strain Ener Res, 3=Abs Force Residuals, 4=Abs Disp Residuals, 5=Abs Strain Ener Res. Flag indicating Nonpositive Def will be used on SOLVER option.
INT4 MarHistSolverMeth INT4 MarHistCtrlMaxStep INT4 MarHistCtrlMaxRecycle INT4 MarHistCtrlMinRecycle REAL8 MarHistMaxResidual
INT4 MarHistConvergeMeth
BOOL MarHistNonPosDefinite
API-987
Property BOOL MarHistNonSymmetric REAL8 MarHistModalMinFreq REAL8 MarHistModalMaxFreq INT4 MarHistModalEigen INT4 MarHistChecking BOOL MarHistAutoSwitch INT4 MarHistAnalCaseSol INT4 MarHistBuckleNumModes INT4 MarHistBucklePosEigen BOOL MarIncOn INT4 MarIncArcLenMeth REAL8 MarIncTimePeriod REAL8 MarIncInitTimeInc REAL8 MarIncMinTimeInc REAL8 MarIncMaxTimeInc INT4 MarIncScaleFact INT4 MarIncMaxStep INT4 MarIncNumOutInc BOOL MarIncQuasiStatDamp REAL8 MarIncFracFirst INT4 MarIncMaxNumInc INT4 MarIncCtrlMaxRecycle REAL8 MarIncMaxFracForAll REAL8 MarIncTotalTime Description Flag indicating NonSymmetric will be used on SOLVER option. Number indicating the Min Freq for a modal analysis. Number indicating the Max Freq for a modal analysis. Number indicating the Number of eigenvectors to be found in modal analysis. ID indicating checking will be used. 0=None, 1=Strum Sequence. Flag indicating Auto Switch will be used on CONTROL option. ID indicating the Analysis type for this Subcase 1=Static, 2=Normal Modes, 3=Buckling. Number of Buckling modes. Number of Modes With positive eigenvalues. Flag indicating MARC Increment options have been defined ID indicating the Arclength Method. 0=None( AUTO STEP), 1=Crisfield, 2=Riks, 3=Modified Riks, 4=Crisfield/Modified Riks. Number indicating AUTO STEP time period. Number indicating AUTO STEP initial time increment. Number indicating AUTO STEP min time increment. Number indicating AUTO STEP max time increment. Number indicating AUTO STEP scale factor. Number indicating AUTO STEP max number of steps. Number indicating number of output intervals. Flag to include Damping scheme for statics. Number indicating AUTO INCREMENT fraction of total load applied in first step. Number indicating AUTO INCREMENT max num increments. Number indicating AUTO INCREMENT max recycles. Number indicating AUTO INCREMENT max fraction of load for any step. Number indicating AUTO INCREMENT total time.
API-988
Property BOOL MarCtblOn BOOL MarCtblWrite Description Flag indicating the MARC Contact Table has been defined. Flag indicating the MARC Contact Table is to be written.
Master Case Options - NASTRAN Specific BOOL NasOmodesOn STRING NasOmodes[160] Flag indicating an OMODES request has been defined. Expression used to select OMODES output
Nonlinear Case Options - NASTRAN Specific BOOL NasCnlOn BOOL NasCnlUseLoadSet INT32 NasCnlIncrements REAL8 NasCnlTime_Increment INT32 NasCnlMaxIter BOOL NasCnlConvergenceFlags[0..2] or VARIANT vNasCnlConvergenceFlags REAL8 NasCnlConvergenceValue[0..2] or VARIANT vNasCnlConvergenceValue INT4 NasCnlStiffnessMethod INT4 NasCnlKstep INT4 NasCnlIntermediateOutput INT4 NasCnlOutputInterval INT4 NasCnlSolutionStrategy INT4 NasCnlSolutionOverrides BOOL NasCnlModnewtonLineSearch BOOL NasCnlModnewtonQuasiNewton BOOL NasCnlModnewtonBisection Flag indicating the Nonlinear Case Options has been defined. Flag to use the Nonlinear options from the Load Set. Number of Time Increments. Value for Time Step Size. Nonlinear - Max Iterations per Step
Nonlinear - Stiffness Update Method Nonlinear - Iterations before Stiffness Update Nonlinear - Intermediate Output Type Nonlinear - Output Interval Nonlinear - Nonlinear Arc-Length Solution Strategy (ArcLength if nonzero) Nonlinear - Solution Strategy Overrides: 0=none/ advanced, 1=Full Newton Raphson, 2=Modified Newton Raphson Nonlinear - Modified Newton Line Search Override (1=Skip) Nonlinear - Modified Newton Quasi-Newton Override (1=Skip) Nonlinear - Modified Newton Bisection Override (1=Skip)
API-989
Property INT4 NasCnlArcConstraintType REAL8 NasCnlArcMinAdjust REAL8 NasCnlArcMaxAdjust REAL8 NasCnlArcLoadScale INT4 NasCnlArcDesiredIter INT4 NasCnlArcMaxSteps INT4 NasCnlTimeSkipAdjust INT4 NasCnlDominantPeriodSteps REAL8 NasCnlBoundsRb REAL8 NasCnlStabilityTolerance INT4 NasCnlDivergenceLimit INT4 NasCnlQuasiNewtonVectors INT4 NasCnlMaxLineSearch REAL8 NasCnlLineSearchTolerance INT4 NasCnlMaxBisections REAL8 NasCnlMaxRotation REAL8 NasCnlFstress REAL8 NasCnlMaxAdjust BOOL NasCnlCreep BOOL NasCnlSkipNLPARM Description Nonlinear - Arc Length Constraint Type Nonlinear - Min Arc Length Adjust Nonlinear - Max Arc Length Adjust Nonlinear - Arc Length Method Constraint Load Scale Nonlinear - Arc Length Desired Iterations Nonlinear - Arc Length Max Steps Nonlinear - Transient Time Step Skip Factor Nonlinear - Transient Steps for Dominant Period Nonlinear - Transient Bounds to Maintain Step Nonlinear - Transient Minimum Stability Tolerance Nonlinear - Max Diverging Conditions Nonlinear - Number of Quasi-Newton Vectors Nonlinear - Max Line Search per Iteration Nonlinear - Line Search Tolerance Nonlinear - Max Bisections per Increment Nonlinear - Max Rotation per Bisection Nonlinear - Stress Fraction Limit Nonlinear - Max Adjusted vs. Initial Increment Flag Indicating this a Creep Analysis. Flag to disable writing of the NLPARM for this case.
Analysis Set Options - NASTRAN Specific NASTRAN Executive Control Options BOOL NasExecOn INT4 NasExecVersion STRING NasExecOutDir[260] STRING NasExecProblem[160] STRING NasExecSolName[26] REAL8 NasExecMaxTime Flag indicating NASTRAN Executive Options have been defined. Version of NASTRAN to support - Possible values 2004, 2001 and 70 (for all previous versions) Path to directory for output. Problem ID. Name of solution - specified as text, but could be a number. Maximum execution time.
API-990
Property STRING NasExecDiag[160] BOOL NasExecIterSolve INT4 NasExecIterSolve2 INT4 NasExecNumCPU BOOL NasExecSaveDB BOOL NasExecRestart STRING NasExecRestartDB[260] BOOL NasExecSkipStandard INT4 NasExecStartText INT4 NasExecEndText INT4 NasExecMemory BOOL NasExecExtendedMessages STRING NasExecSystemCell[160] STRING NasExecScratchDir1[260] STRING NasExecScratchDir2[260] INT4 NasExecScratchSize1 INT4 NasExecScratchSize2 BOOL NasExecSolutionMonitor NASTRAN Bulk Data Options BOOL NasBulkOn INT4 NasBulkGroupID BOOL NasBulkAutospc BOOL NasBulkAutompc BOOL NasBulkGrdpnt INT4 NasBulkGrdpntVal BOOL NasBulkWtmass Flag indicating NASTRAN Bulk Data Options have been defined. ID of the group of entities to be written to the NASTRAN file. 0 = entire model. Flag to write PARAM,AUTOSPC. Flag to write PARAM,AUTOMPC. Flag to write PARAM,GRDPNT. Value to include on PARAM,GRDPNT. Flag to write PARAM,WTMASS. Description String specifying diagnostics to include in the solution. Flag to select iterative solver. Similar to NasExecIterSolve, but allows you to set 0=Off, 1=On, 2=NX Nastran Elemental Iterative Solver Number of processors to use during solution: 0=Default=1 Processor. Flag to save solution databases for later restart. Flag indicating you want to restart a previous analysis. Path to solution database that you want to restart from. Flag to skip writing standard Executive Control. ID of text to include at beginning of Executive Control. ID of text to include at end of Executive Control. Value of solution memory in Mb. Flag to enable Extended Error Messages. Specifies System Cell options for Nastran Specifies primary scratch directory Specifies secondary scratch directory Size of primary scratch directory (in MBytes) Size of secondary scratch directory (in MBytes) Enables the Nastran Solution Monitor to be activated during an analysis.
API-991
Property REAL8 NasBulkWtmassVal BOOL NasBulkK6rot REAL8 NasBulkK6rotVal BOOL NasBulkMaxratio REAL8 NasBulkMaxratioVal BOOL NasBulkNdamp REAL8 NasBulkNdampVal BOOL NasBulkInrel BOOL NasBulkLangle BOOL NasBulkPrgpst BOOL NasBulkLgdisp BOOL NasBulkDdrmmOff BOOL NasBulkModacc BOOL NasBulkResVec BOOL NasBulkResVecOn BOOL NasBulkOgeom INT4 NasBulkLargeField BOOL NasBulkQuadr BOOL NasBulkSkipStandard INT4 NasBulkStartText INT4 NasBulkEndText BOOL NasBulkSkipBeamShape INT4 NasBulkAutospcType BOOL NasBulkRigidThermalExp BOOL NasBulkSrcomps BOOL NasBulkNofisr Description Value to include on PARAM,WTMASS. Flag to write PARAM,K6ROT. Value to include on PARAM,K6ROT. Flag to write PARAM,MAXRATIO. Value to include on PARAM,MAXRATIO. Flag to write PARAM,NDAMP. Value to include on PARAM,NDAMP. Flag to write PARAM,INREL. Flag to write PARAM,LANGLE. Flag to write PARAM,PRGPST. Flag to write PARAM,LGDISP. Flag to control PARAM,DDRMM Flag to write PARAM,MODACC Flag to write PARAM,RESVEC Value to write with PARAM,RESVEC Flag to write PARAM,OGEOM Selection of field format: 0=Small,1=Large Csys,Matl,Prop, 2=Large All But Elem, 3=Large, 4 = Large Csys, Node Flag selecting CQUADR/CTRIAR as the preferred plate/shell elements. Flag to skip standard bulk data. ID of text written at the beginning of the Bulk Data. ID of text written at the end of the Bulk Data. Flag to skip writing Beam Shapes as PBEAML/PBARL ID of Autospc method 0=Eigenvalue, 1=1..Singular Value Decomposition If True includes effects of thermal expansion for rigid elements If True, writes PARAM,SRCOMPS,YES to output Laminate Strength Ratios If True, writes PARAM,NOFISR,1 to skip failure indices to the F06 file.
API-992
Property BOOL NasBulkLgstrn INT4 NasBulkInrelVal BOOL NasBulkGapsAsContact BOOL NasBulkBoltFact REAL8 NasBulkBoltFactVal BOOL NasBulkDynLdAsLOADSET BOOL NasBulkResViner BOOL NasBulkWriteAllLoadBCSets BOOL NasBulkEnfmotn INT4 NasBulkEnfmotnOpt NASTRAN Nonlinear Options BOOL NasNonlinOn INT4 NasNonlinNDT REAL8 NasNonlinDT INT4 NasNonlinNO INT4 NasNonlinMaxIter BOOL NasNonlinEpsFlag[3] or VARIANT vNasNonlinEpsFlag REAL8 NasNonlinEps[3] or VARIANT vNasNonlinEps NASTRAN Modal Options BOOL NasModeOn INT4 NasModeEigrSet INT4 NasModeMethod BOOL NasModeSolutionType Flag indicating NASTRAN Modal Options have been defined. SetID to be used for EIGR. Modal Solution method: 0=Givens,1=Modified Givens, 2=Inverse Power, 3=Inverse Power/Sturm, 4=Householder, 5=Modified Householder, 6=Lanczos. Solution type: 1=Direct, 2=Modal. Flag indicating NASTRAN Nonlinear Options have been defined. Number of time steps. Initial time increment. Output step interval. Max iterations per step. Flags indicating data to use for checking convergence: 0=Temperature, 1=Load, 2=Work. Description If True, writes PARAM,LGSTRN,1 to include effects of large strain. ID of Inertia Relief option: -1=On, -2=Automatic Flag to write Gap Elements as contact. Flag to write PARAM, BOLTFACT Value to be written with PARAM, BOLTFACT option Flag to write Dynamic Loads using LOADSET/LSEQ method Flag to write PARAM,RESVINER Flag to write all Static Loads and BC Sets. Flag to write NASTRAN command option for NX Nastran or PARAM,ENFMOTN for MSC Nastran ID of ENFMOTN option: 0,1, 2
API-993
Property REAL8 NasModeFreqRange[2] or VARIANT vNasModeFreqRange INT4 NasModeEstRoots INT4 NasModeDesiredRoots INT4 NasModeNormOpt INT4 NasModeNormNode INT4 NasModeNormDOF INT4 NasModeMassForm BOOL NasModesSkipEigr REAL8 NasModeImagFreqRange[2] or VARIANT vNasModeImagFreqRange REAL8 NasModesComplexConverge REAL8 NasModesComplexRegionWidth REAL8 NasModeDampOverall NASTRAN Dynamic Options BOOL NasDynOn BOOL NasDynUseLoadSet REAL8 NasDynDampOverall REAL8 NasDynDampW3 REAL8 NasDynDampW4 REAL8 NasDynKeepFreq[2] or VARIANT vNasDynKeepFreq REAL8 NasDynTranDT INT4 NasDynFreqTbl INT4 NasDynDampModalTbl INT4 NasDynKeepModes Flag indicating NASTRAN Dynamic Options have been defined. Flag to use dynamic options from the load set. Value for Overall Structural Damping. Value for System Damping. Value for Element Damping. Max and Min frequencies used to limit response. Value used for Transient Time Increment. ID of Function defining the Solution frequencies. ID of Function defining the Modal Damping Table. Number of Modes used to limit response. Description Frequency range of interest, [0]=Min, [1]=Max. Estimated number of eigenvalues. Number of desired eigenvalues/modes. Normalization method: 0=Mass,1=Max, 2=Point. Node ID for use with point normalization method. Nodal DOF for use with point normalization method. Mass matrix formulation: 0=Default, 1=Lumped, 2=Coupled. If True, skips writing the EIGR card for specifying modal analysis options For Complex Modes analysis, specifies the imaginary part of the Frequency Range of interest. Specifies Complex Modes convergence value Specifies Region Width for Complex Modes analysis.
API-994
Property INT4 NasDynTranTimeSteps INT4 NasDynTransOutInt BOOL NasDynDampModalMethod INT4 NasDynRespSpect INT4 NasDynNoFreq[2] or VARIANT vNasDynNoFreq BOOL NasDynLogInterp[2] or VARIANT vNasDynLogInterp INT4 NasDynFreqType[2] or VARIANT vNasDynFreqType REAL8 NasDynMinFreq[2] or VARIANT vNasDynFreqType REAL8 NasDynMaxFreq[2] or VARIANT vNasDynMaxFreq REAL8 NasDynSpreadCluster[2] or VARIANT vNasDynSpreadCluster BOOL NasDynFzero REAL8 NasDynFzeroVal BOOL NasDynWmodal ID of Function defining the Modal Frequency Correlation for Response Spectrum. Number of Frequency Intervals Description Number of Transient Time Steps Number for Transient Output Interval
Value defining frequency spread around modes. Flag to write PARAM,FZERO Value of PARAM, FZERO Flag to write PARAM,WMODAL
NASTRAN Random OUTPUT2 Options BOOL NasRandomOn INT4 NasRandomRequest[2] or VARIANT vNasRandomRequest NASTRAN Modal XY Plot Options BOOL NasModeXYOn Flag indicating NASTRAN Modal XY Plot Options have been defined. Flag indicating NASTRAN Random Output2 options have been defined. Output requests for Output2: [0]=Nodal Output, [1]=Elemental Output.
API-995
Property BOOL NasModeXYRequest[5] or VARIANT vNasModeXYRequest BOOL NasModeXYRefNode Description Flags selecting types of output for XY plotting. Flag indicating output of summary data only.
NASTRAN Random XY Plot Options BOOL NasRandXYOn BOOL NasRandXYRequest[48] or VARIANT vNasRandXYRequest BOOL NasRandXYSummary INT4 NasRandXYNodeGroup INT4 NasRandXYElemGroup Flag indicating NASTRAN Random XY Plot Options have been defined. Flags selecting nodal and elemental output for XY plotting. Flag indicating output of summary data only. ID of group containing node IDs for XY plot output. ID of group containing element IDs for XY plot output.
NASTRAN Response Spectrum Generation BOOL NasGenSpecOn BOOL NasGenSpecRequest[18] or VARIANT vNasGenSpecRequest BOOL NasGenSpecAbsolute INT4 NasGenSpecNodeGroup Flag indicating NASTRAN Response Spectrum Generation Options have been specified Flags selecting spectrum generation for displacement, velocity and acceleration DOF. Flag indicating absolute or relative. ID of group containing node IDs for spectrum generation.
NASTRAN Response Spectrum Application BOOL NasAppSpecOn INT4 NasAppSpecType INT4 NasAppSpecFunction REAL8 NasAppSpecScale INT4 NasAppSpecMethod REAL8 NasAppSpecClose INT4 NasAppSpecSuport INT4 NasAppSpecDamp NASTRAN GEOMCHECK Options Flag indicating NASTRAN Response Spectrum Application Options have been specified. Spectrum type. Spectrum function ID. Scale factor to apply to spectrum. Modal combination method: 0=ABS, 1=SRSS, 2=NRL, 3=NRLO. Modal combination closeness. ID of constraint set to be used as a Base/SUPORT. Function ID to be used for modal damping.
API-996
Property BOOL NasGCheckOn BOOL NasGCheckNone Description Flag indicating Geomtery checking is specified. Flag to write GEOMCHECK, NONE Flag indicating type of Geomtery checking specified. [0]=Q4_SKEW, [1]=Q4_TAPER, [2]=Q4_WARP, [3]=Q4_IAMIN, [4]=Q4_IAMAX, [5]=T3_SKEW, [6]=T3_IAMAX, [7]=TET_AR, [8]=TET_EPLR, [9]=TET_DETJ, [10]=TET_DETG, [11]=HEX_AR, [12]=HEX_EPLR, [13]=HEX_DETJ, [14]=HEX_WARP, [15]=PEN_AR, [16]=PEN_EPLR, [17]=PEN_DETJ, [18]=PEN_WARP, [19]=BEAM_OFF, [20]=BAR_OFF. Number indicating tolerance value for each GEOM CHECK
REAL8 NasGCheckTol[21] or VARIANT vNasGCheckTol INT4 NasGCheckMsg[21] or VARIANT vNasGCheckMsg BOOL NasGCheckSummary INT4 NasGCheckMsgLimit
0=Fatal, 1=Inform, 2=Warn Flag to request Geomtery Check summary. Number indicating max number of messages
NASTRAN MODELCHECK Options BOOL NasMCheckOn BOOL NasMCheckWtDOFSet[6] or VARIANT vNasMCheckWtDOFSet BOOL NasMCheckWtCG INT4 NasMCheckWtRefNode INT4 NasMCheckWtUnits INT4 NasMCheckGrndRefNode BOOL NasMCheckGrndDOFSet[5] or VARIANT vNasMCheckGrndDOFSet REAL8 NasMCheckMaxStrnEn BOOL NasMCheckDataRec INT4 NasMCheckDataTol NASTRAN NXSTRAT Options Flag indicating NASTRAN Model Check options have been specified. Flag indicating selected Model Checks [0]=G, [1]=N, [2]=N+AUTOSPC, [3]=F, [4]=A [5]=V Flag to select CGI option. ID of Model Check Ref Node. Number indicating Units to be used. 0=MASS, 1=WEIGHT ID of Ground Check Ref Node. Flag indicating selected Ground Checks [0]=G, [1]=N, [2]=N+AUTOSPC, [3]=F, [4]=A. Number indicating Max Strain Energy. Flag to use DATAREC. Tolerance Number to print forces above.
API-997
Property BOOL NasNXStratOn INT4 NasNXStratSolver INT4 NasNXStratAuto BOOL NasNXStratNposit BOOL NasNXStratMasstyp INT4 NasNXStratTint BOOL NasNXStratMstab REAL8 NasNXStratMsfac REAL8 NasNXStratDtdelay REAL8 NasNXStratSdofang BOOL NasNXStratUpform BOOL NasNXStratDispopt BOOL NasNXStratLoadopt REAL8 NasNXStratAlpha REAL8 NasNXStratDelta INT4 NasNXStratItemax REAL8 NasNXStratEpsia REAL8 NasNXStratEpsib REAL8 NasNXStratEpsii INT4 NasNXStratLsearch INT4 NasNXStratMaxite INT4 NasNXStratConvcri REAL8 NasNXStratEtol REAL8 NasNXStratRtol REAL8 NasNXStratRnorm REAL8 NasNXStratRmnorm REAL8 NasNXStratRctol REAL8 NasNXStratDtol REAL8 NasNXStratDnorm Description Flag indicating NASTRAN Advanced Nonlinear options have been defined. Solver type 0=Direct Sparse 1=Multigrid Auto Incrementation Continue when not positive definite Mass Matrix Type Integration order thru Shell thick Matrix Stabilization Matrix Stabilization Factor Element Death Time delay Shell DOF Angle u/p formulation Prescribed displacement option Applied Load option Newmark Time Integ alpha coefficient Newmark Time Integ delta coefficient Max iter for multigrid solver Convergence Tolerance epsia Convergence Tolerance epsib Convergence Tolerance epsii Line Search Flag Max Iter per time step Convergence Criteria Relative Energy Tolerance Relative Force Tolerance Reference Force Reference Moment Relative Contact Force Tolerance Relative Displacement Tolerance Reference Translation
API-998
Property REAL8 NasNXStratDmnorm REAL8 NasNXStratStol REAL8 NasNXStratRconsm REAL8 NasNXStratEnlsth INT4 NasNXStratAtssubd REAL8 NasNXStratAtsmxdt INT4 NasNXStratAtsnext REAL8 NasNXStratAtsdfac BOOL NasNXStratAtslows REAL8 NasNXStratAtsdamp INT4 NasNXStratLdcgrid INT4 NasNXStratLdcdof REAL8 NasNXStratLdcdisp REAL8 NasNXStratLdcimax REAL8 NasNXStratLdcdmax BOOL NasNXStratLdccont INT4 NasNXStratLdcsubd INT4 NasNXStratImpact INT4 NasNXStratNsupp BOOL NasNXStratModex INT4 NasNXStratModexNew REAL8 NasNXStratAtsmass REAL8 NasNXStratTstart INT4 NasNXStratIrint INT4 NasNXStratNsubgrp BOOL NasNXStratElcv INT4 NasNXStratEqrbar INT4 NasNXStratEqrbe2 REAL8 NasNXStratSpringk Reference Rotation Line Search Convergence Tolerance Reference Contact Force Line Search Energy Threshold Auto Time Step Small Step Size Auto Time Step Largest Step Size Auto Time Step Size Flag Division Factor for Sub Increment Low Speed Dynamics Flag Low Speed Dynamics Damping Factor Node ID for Prescribed Displacement DOF for Prescribed Displacement Magnitude of Prescribed Displacement Displacement Convergence Factor Max Displacement Solution Termination after Critical Max Arc Length Subdivisions Impact Control Scheme Num Iterations for Pairing Restart Flag - Obsolete, use NasNXStratModexNew Restart Flag/Option Value for Auto Time Stepping Inertia Factor Restart Solution Time Frequency of Results in File Number of Subgroups Conversion Flag RBAR element option RBE2 element option Stiffness of RBAR/RBE2 springs Description
API-999
Property REAL8 NasNXStratBeame REAL8 NasNXStratBeama REAL8 NasNXStratRblcrit INT4 NasNXStratXstep INT4 NasNXStratXdtcal REAL8 NasNXStratXdtfac REAL8 NasNXStratXmscale REAL8 NasNXStratXdtmin1 REAL8 NasNXStratXdtmin2 INT4 NasNXStratIcmode INT4 NasNXStratUlform INT4 NasNXStratTimeSteps[0..9] REAL8 NasNXStratTimeIncrement[0..9] INT4 NasNXStratSkipFactor[0..9] INT4 NasNXStratRtsubd INT4 NasNXStratCstype BOOL NasNXStratElrescs REAL8 NasNXStratMaxDisp INT4 NasNXStratBoltstp BOOL NasNXStratCvssval BOOL NasNXStratRtalg BOOL NasNXStratTnslcf REAL8 NasNXStratDrillkf REAL8 NasNXStratLslower REAL8 NasNXStratLsupper BOOL NasNXStratXtcurve Description Youngs modulus for RBAR/RBE2 elements Effective cross section for RBAR/RBE2 elements Critical Length for RBAR/RBE2 elements Time Step Method Critical time step recalculation every XDTCAL steps Critical time step factor Mass scale factor Min steps size to use mass scaling Max steps size to use mass scaling Incompatible mode flag 0=off 1=on Large strain formulation used Number of Steps Time increment Output results every Nth step. Rigid-target subdivision scheme used. Selects the type of contact segment to use. For NX Nastran Advanced Nonlinear solver, if True, results are in elemental coordinate system, if False, in the Material coordinate system Limit for max incremental displacement/equilibrium iteration Number of steps for applying bolt pre-load force Flag to convert TABLES1 from engineering stress strain to true stress strain. Flag selecting the rigid target method: 0=Current, 1=Old(v4) Flag allowing tensile consistent contact forces on quadratic 3D contact segments Maximum Rotational Stiffness Factor used when drilling stiffness is zero Value for Lower bound of line search. Value for Upper bound of line search. Flag to extend TABLES1 by linear extrapolation
API-1000
Property NASTRAN DDAM Options BOOL NasDdamOn BOOL NasDdamEnabled BOOL NasDdamIncludePath BOOL NasDdamIsDDAM INT4 NasDdamUseBuiltInCoeff INT4 NasDdamEquationType INT4 NasDdamSurfaceShip INT4 NasDdamEquipmentLocation INT4 NasDdamElasticPlastic INT4 NasDdamForeAftDirection INT4 NasDdamVerticalDirection INT4 NasDdamDirectionSequence REAL8 NasDdamMassToWeight REAL8 NasDdamWeightCutoffPct REAL8 NasDdamGCutoff STRING NasDdamSpecCoeffFile[260] BOOL NasDdamCoeffOn[14] or VARIANT vNasDdamCoeffOn REAL8 NasDdamCoeffVal[14] or VARIANT vNasDdamCoeffVal REAL8 NasDdamForceConversion REAL8 NasDdamAccelConversion Flag indicating Nastran DDAM Options have been specified If True, DDAM analysis is enabled If True, full paths are specified in all filenames If True, this is a DDAM analysis, otherwise it is a non-DDAM spectrum analysis 0=Specify Coefficients, 1=External File, 2=Built-In 0=DDS-072, 1=NRL 1396 0=Surface, 1=Submerged 0=Deck, 1=Hull, 2=Shell 0=Elastic, 1=Elastic-Plastic Fore/Aft Axis (0=X, 1=Y, 2=Z) Vertical Axis (0=X, 1=Y, 2=Z) Number specifying sequence of axes to apply (X=1,Y=2,Z=3), so 132 means X then Z, then Y Mass to Weight conversion factor Modal Mass Cutoff Percentage Minimum Acceleration in Gs Filename (and path) of file containing spectrum coefficients (only used if NasDdamUseBuiltInCoeff=1) Flags to turn on/off specified spectrum coefficients Description
Values of specified spectrum coefficients. Value for Force Unit Conversion Value for Acceleration Unit Conversion
NASTRAN Rotor Dynamics Options BOOL NasRotorOn BOOL NasRotorEnabled Flag indicating Nastran Rotor Dynamics Options have been specified If True, Rotor Dynamics analysis is enabled
API-1001
Property BOOL NasRotorIncludePath BOOL NasRotorSingleRotor BOOL NasRotorFixedRefSys BOOL NasRotorAsyncResponse BOOL NasRotorSteinerInertia BOOL NasRotorForceExcitation BOOL NasRotorDoCSV BOOL NasRotorDoGPF INT4 NasRotorInputUnits INT4 NasRotorOutputUnits INT4 NasRotorPrintedOutput INT4 NasRotorSpeedNumSteps REAL8 NasRotorComplexModeOutput REAL8 NasRotorWhirlThreshold REAL8 NasRotorExcitationOrder REAL8 NasRotorSpeedStart REAL8 NasRotorSpeedStep STRING NasRotorModeSelection[60] Description If True, full paths are specified in all filenames If True, this is a single rotor analysis of the full model, if False, multiple rotors must be specified with rotor regions True = Fixed Reference CSys, False = Rotating True = Asynchronous Response Calculations True = Include Steiner Inertia Terms True = Force Excitation, False = Mass Unbalance True = Create comma separated output file True = Create GPF output file Speed Input Units 0=Rev/Min, 1=Cycle/Sec, 2=Hz, 3=Radians/ Sec Output Units 0=Rev/Min, 1=Cycle/Sec, 2=Hz, 3=Radians/Sec Printed Output 0=None, 1=Generalized Matrices, 2=Eigenvalue Summary/Eigenvectors, 3=Both Number of Steps in Rotor Speed Mode/Whirl Output (0.0=None, <0=All RPM, >0=Specified Speed) Whirl Threshold Excitation Order (Default = 1.0, 0.0=Forward Whirl, 2.0=Backward Whirl) Rotor Speed Start Value Rotor Speed Step Size String specifying IDs of modes for dynamic response
Analysis Set Options - ABAQUS Specific BOOL AbaModOn BOOL AbaModTitleSetNames BOOL AbaModGroupsAsSets BOOL AbaModSkipStandard INT4 AbaModStartText INT4 AbaModEndText INT4 AbaModVersion Flag indicating ABAQUS Model options have been specified. Flag to write entity titles as set names. Flag to write all groups as sets. Flag to skip output of standard ABAQUS model. ID of text written at beginning of ABAQUS model ID of text written at end of ABAQUS model. Version number of ABAQUS to translate for (61=Version 6.1).
API-1002
Property Analysis Set Options - ANSYS Specific ANSYS Model Options BOOL AnsModOn BOOL AnsModTitleSetNames BOOL AnsModGroupsAsSets BOOL AnsModSkipStandard INT4 AnsModStartText INT4 AnsModEndText STRING AnsModTitle BOOL AnsModWriteSolCmd BOOL AnsModWriteIter BOOL AnsModWriteLargeDef INT4 AnsModMemory INT4 AnsModVersion ANSYS Random Analysis Options BOOL AnsRandOn BOOL AnsRandDisp BOOL AnsRandVel BOOL AnsRandAccel BOOL AnsRandDispRelative BOOL AnsRandVelRelative BOOL AnsRandAccelRelative Flag indicating ANSYS Random Analysis Options have been specified. Flag requesting displacement output. Flag requesting velocity output. Flag requesting acceleration output. Flag indicating displacement output should be relative or absolute. Flag indicating velocity output should be relative or absolute. Flag indicating acceleration output should be relative or absolute. Flag indicating ANSYS Model options have been specified. Flag to Write FEMAP titles as set names. Flag to write Groups As Sets Flag to skip output of standard ANSYS model. ID of text written at beginning of ANSYS model. ID of text written at end of ANSYS model. Title for analysis (maximum 79 characters). Flag to write commands for automatic solve of model. Flag to choose the iterative solver in ANSYS 5.3 and above. Flag to include large deformation effects in nonlinear. Analysis memory: 0=Default. ANSYS version (4=ANSYS 4.4, 5=ANSYS 5.x). Description
Analysis Set Options - FEMAP Structural Specific FEMAP Structural File Operations BOOL FStFilOn STRING FStFilLogFile[260] BOOL FStFilKeepLogFile Flag indicating FEMAP Structural File Operation Options have been specified. Full path to the log file (blank=default). Flag indicating that the log file should be kept.
API-1003
Property BOOL FStFilEchoLogFile STRING FStFilHyper1[260] STRING FStFilHyper2[260] BOOL FStFilKeepHyper STRING FStFilScratch1[260] STRING FStFilScratch2[260] FEMAP Structural Heat Transfer Options BOOL FStHeatOn REAL8 FStHeatTempTol INT4 FStHeatConvergeType INT4 FStHeatMaxIter Flag indicating FEMAP Structural Heat Transfer Options have been specified. Temperature convergence tolerance. Convergence norm: 0=Absolute, 1=Euclidean, 2=Maximum. Maximum iterations. Filename for first Hypermatrix file (blank=default). Filename for second Hypermatrix file (blank=default). Flag indicating that Hypermatrix files should be kept. Path to sparse solver scratch directory. Path to additional sparse solver scratch directory. Description
FEMAP Structural Dynamic Solution Options BOOL FStDynOn INT4 FStDynSolMethod BOOL FStDynMassForm BOOL FStDynModalDamp BOOL FStDynModalNorm INT4 FStDynNumModes INT4 FStDynRigidModes INT4 FStDynFreqMethod REAL8 FStDynFreqRange[2] or VARIANT vFStDynFreqRange INT4 FStDynMassDir REAL8 FStDynMassTol INT4 FStDynIterVec INT4 FStDynMaxIter Flag indicating FEMAP Structural Dynamic Solution options have been specified. Solution method: 0=Guyan, 1=SVI, 2=Lanczos. Mass formulation: 0=Consistent, 1=Lumped. Flag indicating that modal damping should be included. Flag indicating mode normalization method. Number of flexible modes. Number of rigid body modes. Frequency range method: 0=Above, 1=Below, 2=Around, 3=Between. Frequency range: [0]=Single or Min Frequency, [1]=Max Frequency. Effective mass direction: 0=None, 1=X, 2=Y, 3=Z, 4=X+Y, 5=X+Z, 6=Y+Z, 7=X+Y+Z. Effective mass lower limit. Number of iteration vectors. Max iterations.
API-1004
Property INT4 FStDynSigDigits FEMAP Structural Solver Options BOOL FStSolOn BOOL FStSolIter REAL8 FStSolIterConvTol INT4 FStSolIterMaxIter INT4 FStSolMemIterMax INT4 FStSolMemVirtMax INT4 FStSolMemAppPct INT4 FStSolMemFortranPct BOOL FStSolStressStiff BOOL FStSolSpinSoft INT4 FStSolStiffSoftLoad BOOL FStSolShellAuto BOOL FStSolSingularity BOOL FStSolVerification REAL8 FStSolShellAutoAng REAL8 FStSolSingCriteria INT4 FStSolNodeGroup INT4 FStSolElemGroup Flag indicating FEMAP Structural Solver Options have been specified. Flag choosing sparse or iterative solver. Iterative solver convergence tolerance. Iterative solver max iterations. Max memory for iterative solver in MBytes. Total virtual memory limit in MBytes. Application dynamic memory in percent. Fortran workspace in percent. Flag to turn on stress stiffening. Flag to turn on spin softening. Load set ID for use with stress stiffening or spin softening. Shell autorestraint option. Flag to select singularity removal. Flag indicating that a verification-only analysis. Shell autorestraint angle. Singularity removal criteria. ID of group containing node IDs for nodal output recovery (0=All Nodes). ID of group containing element IDs for elemental output recovery (0=All Elements). Significant digits. Description
Analysis Set Options - MARC Specific BOOL MarModOn BOOL MarModSkipStandard INT4 MarModStartText INT4 MarModEndText char MarModTitle[160] INT4 MarModWorkSpVec INT4 MarModMaxConstrain Flag Indicating MARC parameters have been specified. Flag to skip the standard MARC model section. ID of text written at the begining of the model section. ID of text written at the end of the model section. Title of model specified as text. Size of Work Space Vector on the SIZING command. Max Number of constraints written to the SIZING command.
API-1005
Property BOOL MarModFolOn INT4 MarModFolOpt BOOL MarModPlasOn INT4 MarModPlasOpt BOOL MarModElasOn BOOL MarModElasTotal BOOL MarModElasIs BOOL MarModConstDil BOOL MarModLgDisp BOOL MarModUpdate BOOL MarModFinite BOOL MarModEchoInput BOOL MarModWriteGroupSet BOOL MarModExtInput BOOL MarModShlTrShear INT4 MarModPltIntegPt BOOL MarModDistLoadOn INT4 MarModDistLoadList INT4 MarModDistLoadElem INT4 MarModDistLoadNode BOOL MarModTyingOn INT4 MarModTyingCe INT4 MarModTyingType INT4 MarModTyingServoNd INT4 MarModTyingServoLk BOOL MarModOutOfCore INT4 MarModCoreVal Description Flag indicating Follower Force has been specified. ID of Follower Option 1=Off Incremental, 2=Last Iter Inc, 3=Beg Disp Incr, 4=Off Total, 5=Last Iter Total, 6=Beg Disp To Flag indicating Plasticity has been specified. ID of Plasticity Option 1=Add Normal Small Strain 2=Add Radial Small Strain, 3=Add Normal Large Strain, 4=Add Radial Large Strain, 5=Multiplicative. Flag indicating Elasticity Force has been specified. Total Lagrange=TRUE, Updated Lagrange=FALSE Flag indicating ELASTIC parameter will be used. Flag indicating CONSTANT parameter will be used. Flag indicating LARGE DISP parameter will be used. Flag indicating UPDATE parameter will be used. Flag indicating FINITE parameter will be used. Flag to Echo the Input. Flag to write groups as sets. Flag indicating the EXTENDED parameter will be used. Flag indicating the TSHEAR parameter will be used. Number of SHELL SECT integration points. Flag indicating Load List information has been specified. Number indicating the max number of Load List in the model. Number indicating the max number of Elements in any list. Number indicating the max number of Nodes in any list. Flag indicating TIE parameter will be used. Number of tying type constraint equations. Number of different types of tying constraints. Max Number of retained nodes for the tying type. Max Number of Servo Links. Flag indicating the ELSTO parameter will be used. Number indicating the Out Of Core buffer size.
API-1006
Property BOOL MarModProcessors INT4 MarModNoCpu INT4 MarModVecLength BOOL MarModParallel BOOL MarModBWOpt Description Flag indicating the PROCESSOR parameter will be used. Number of CPUs to be used. Number indicating Vector Length for the PROCESSOR param. Flag if matrices are to be formed in parallel. Flag indicating the OPTIMIZE parameter will be used.
Analysis Set Options - LS-DYNA Specific BOOL DynModOn BOOL DynModExportRigidNodes BOOL DynModMatlBasedParts BOOL DynModGroupsAsSets BOOL DynModSkipStandard INT4 DynModStartText INT4 DynModEndText Flag Indicating LS-DYNA parameters have been specified. Flag to export rigid reference nodes. Flag to write Material based plate parts. Flag to write Femap groups as sets. Flag to skip the standard LS-DYNA model section ID of text written at the beginning of the model section. ID of text written at the end of the model section.
InitAnalysisMgr
API-1007
InitAnalysisMgr
( analysis_program, analysis_type, InitMasterCase ) Description: This method initializes default options in the AnalysisMgr object Input: INT4 analysis_program INT4 analysis_type BOOL InitMasterCase Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to initialize the current object Refer to the Solver property Refer to the AnalysisType property If true, also initializes the Master Case in in the object
API-1008
5.3.2.2 GetText
GetText
GetText
( textID, text ) Description: This method returns a string containing the text associated with a specified textID. Input: INT4 textID Output: STRING text Return Code: FE_FAIL Remarks/Usage: Text IDs are returned from various AnalysisSet properties. These properties have names ending with StartText or EndText. Example: None Unable to get the text. Check to see this is a valid ID. A string containing the text. This string will contain carriage control characters if there are multiple lines in the text. A textID returned from one of the text properties.
PutText
API-1009
5.3.2.3 PutText
PutText
( textID, text ) Description: This method updates or creates text to associate with a text property. Input: A textID used to store the text string. Specify the same value as the text property returned if you simply want to update the text. Specify 0 if you want to create a new text entity. In this case, the return value will be the textID that was created. You should set the text property to this value. A string containing the text. May contain carriage control to signify multiple lines.
INT4 textID
The ID.
Text IDs are returned from various AnalysisSet properties. These properties have names ending with StartText or EndText. Example: None
API-1010
GetCorrelate
5.3.2.4 GetCorrelate
GetCorrelate
( count, excitedCase, appliedCase, realScale, imagScale, realFunc, imagFunc ) Description: This method retrieves data from the Random Analysis Correlation Table. Input: None Output: INT4 count INT4 excitedCase[0..count-1] INT4 appliedCase[0..count-1] REAL8 realScale[0..count-1] REAL8 imagScale[0..count-1] INT4 realFunc[0..count-1] INT4 imagFunc[0..count-1] Return Value FE_NOT_EXIST FE_FAIL Remarks/Usage: This function has been replace by GetCorrelate2 in Femap 10.1 The AnalysisSet must be loaded with data from the associated set before this function can be used. Example: None The correlation table does not exist. Unable to allocate memory to return the correlation data. The number of entries in each of the other vectors. The IDs of the analysis case being excited. The IDs of the analysis case where the PSD is applied. The scale factor for the real portion of the PSD. The scale factor for the imaginary portion of the PSD. The IDs of functions defining the real PSDs. The IDs of functions defining the imaginary PSDs.
GetCorrelate2
API-1011
5.3.2.5 GetCorrelate2
GetCorrelate2
( count, excitedCase, appliedCase, realScale, imagScale, realFunc, imagFunc, realInterp, imagInterp ) Description: This method retrieves data from the Random Analysis Correlation Table. Input: None Output: INT4 count INT4 excitedCase[0..count-1] INT4 appliedCase[0..count-1] REAL8 realScale[0..count-1] REAL8 imagScale[0..count-1] INT4 realFunc[0..count-1] INT4 imagFunc[0..count-1] INT4 realInterp[0..count-1] INT4 imagInterp[0..count-1] Return Value FE_NOT_EXIST FE_FAIL Remarks/Usage: The AnalysisSet must be loaded with data from the associated set before this function can be used. Example: None The correlation table does not exist. Unable to allocate memory to return the correlation data. The number of entries in each of the other vectors. The IDs of the analysis case being excited. The IDs of the analysis case where the PSD is applied. The scale factor for the real portion of the PSD. The scale factor for the imaginary portion of the PSD. The IDs of functions defining the real PSDs. The IDs of functions defining the imaginary PSDs. The IDs of Interpolation method defining the real PSD. 0=Log Log, 1=Linear, 2=XLog YLin, 3=XLin YLog The IDs of Interpolation method defining the imaginary PSD. 0=Log Log, 1=Linear, 2=XLog YLin, 3=XLin YLog
API-1012
PutCorrelate
5.3.2.6 PutCorrelate
PutCorrelate
( count, excitedCase, appliedCase, realScale, imagScale, realFunc, imagFunc ) Description: This method replaces data in the Random Analysis Correlation Table. Input: INT4 count INT4 excitedCase[0..count-1] INT4 appliedCase[0..count-1] REAL8 realScale[0..count-1] REAL8 imagScale[0..count-1] INT4 realFunc[0..count-1] INT4 imagFunc[0..count-1] Output: None Return Value FE_FAIL Remarks/Usage: This function has been replace by PutCorrelate2 in Femap 10.1 The AnalysisSet must be loaded with data from the associated set before this function can be used. This function completely replaces the correlation table - it does not add to data that is already there. Example: None Unable to update the correlation table. The number of entries in each of the other vectors. The IDs of the analysis case being excited. The IDs of the analysis case where the PSD is applied. The scale factor for the real portion of the PSD. The scale factor for the imaginary portion of the PSD. The IDs of functions defining the real PSDs. The IDs of functions defining the imaginary PSDs.
PutCorrelate2
API-1013
5.3.2.7 PutCorrelate2
PutCorrelate2
( count, excitedCase, appliedCase, realScale, imagScale, realFunc, imagFunc, realInterp, imagInterp ) Description: This method replaces data in the Random Analysis Correlation Table. Input: INT4 count INT4 excitedCase[0..count-1] INT4 appliedCase[0..count-1] REAL8 realScale[0..count-1] REAL8 imagScale[0..count-1] INT4 realFunc[0..count-1] INT4 imagFunc[0..count-1] INT4 realInterp[0..count-1] INT4 imagInterp[0..count-1] Output: None Return Value FE_FAIL Remarks/Usage: The AnalysisSet must be loaded with data from the associated set before this function can be used. This function completely replaces the correlation table - it does not add to data that is already there. Example: None Unable to update the correlation table. The number of entries in each of the other vectors. The IDs of the analysis case being excited. The IDs of the analysis case where the PSD is applied. The scale factor for the real portion of the PSD. The scale factor for the imaginary portion of the PSD. The IDs of functions defining the real PSDs. The IDs of functions defining the imaginary PSDs. The IDs of Interpolation method defining the real PSD. 0=Log Log, 1=Linear, 2=XLog YLin, 3=XLin YLog The IDs of Interpolation method defining the imaginary PSD. 0=Log Log, 1=Linear, 2=XLog YLin, 3=XLin YLog
API-1014
GetContactTable
5.3.2.8 GetContactTable
GetContactTable
( count, rowSeg, colSeg, tieType, distTol, sepForce, friction, interClose ) Description: This method retrieves data from the Contact Table. Input: None Output: INT4 count INT4 rowSeg[0..count-1] INT4 colSeg[0..count-1] INT4 tieType[0..count-1] REAL8 distTol[0..count-1] REAL8 sepForce[0..count-1] REAL8 friction[0..count-1] REAL8 interClose[0..count-1] Return Value FE_NOT_EXIST FE_FAIL Remarks/Usage: None Example: None The contact table does not exist. Unable to allocate memory to return the contact table data. The number of entries in each of the other vectors. The IDs of the contact segments referenced in rows of the table The IDs of the contact segments referenced in columns of the table The tying type (0,1=None, 2=Touch, 3=Glue) The distance tolerance The separation force The friction values The interference closure
PutContactTable
API-1015
5.3.2.9 PutContactTable
PutContactTable
( count, rowSeg, colSeg, tieType, distTol, sepForce, friction, interClose ) Description: This method replaces data in the Contact Table Input: INT4 count INT4 rowSeg[0..count-1] INT4 colSeg[0..count-1] INT4 tieType[0..count-1] REAL8 distTol[0..count-1] REAL8 sepForce[0..count-1] REAL8 friction[0..count-1] REAL8 interClose[0..count-1] Output: None Return Value FE_FAIL Remarks/Usage: This function completely replaces the contact table - it does not add to data that is already there. Example: None Unable to update the contact table. The number of entries in each of the other vectors. The IDs of the contact segments referenced in rows of the table The IDs of the contact segments referenced in columns of the table The tying type (0,1=None, 2=Touch, 3=Glue) The distance tolerance The separation force The friction values The interference closure
API-1016
5.3.2.10 Case
Case
Case
( caseID ) Description: This method creates and returns an AnalysisCase object that is loaded with the options referenced by a case. Input: INT4 caseID Output: Return Code: None Remarks/Usage: The current AnalysisSet object must be loaded with the data from the set that contains the case that you want to retrieve. The AnalysisSet ID property is used to define the set that you want to retrieve. Example: None The ID of the Analysis Case to load.
Analyze
API-1017
5.3.2.11 Analyze
Analyze
( setID ) Description: Selects and analyzes an Analysis Set. Input: INT4 setID Output: None Return Code: None Remarks/Usage: This method can be used to select an analysis set and run the associated analysis program. Example: None The ID of the Analysis Set to be analyzed.
API-1018
AnalyzeMultiple
5.3.2.12 AnalyzeMultiple
AnalyzeMultiple
( setID ) Description: Selects and sequentially analyzes one or more Analysis Sets. Input: INT4 setID Output: None Return Code: None Remarks/Usage: This method can be used to select multiple analysis sets and run the associated analysis program. Example: None The ID of a Set that contains the IDs of the Analysis Sets to be analyzed.
ClearAnalysisQueue
API-1019
5.3.2.13 ClearAnalysisQueue
ClearAnalysisQueue
( void ) Description: Clears the Analysis Job Queue of jobs. Input: None Output: None Return Code: FE_OK Remarks/Usage: None Example: None
API-1020
5.3.2.14 Preview
Preview
Preview
( SetID ) Description: Calls Preview Input in the Analysis Set Manager Input: INT4 setID Output: None Return Code: FE_OK Remarks/Usage: None Example: None The ID of a Analysis Set to be previewed in the Preview Analysis Input File window. Enter -1 for the Active Analysis Set.
Preview
API-1021
API-1022
Property
INT4 OnType
INT4 DataType
PutAll
API-1023
PutAll
( entID, enDataType, enOnType, sTitle ) Description: This method stores a Constraint Definition with the specified ID along with all the available options. Input: INT4 entID INT4 DataType INT4 OnType STRING Title Output: None Return Code: FE_FAIL Remarks/Usage: Unlike the standard Put method, this function loads all of the properties as arguments. If you are updating all of the properties before storing an entity, this function will be faster than multiple calls to load each property individually. Example: None Unable to store the entity with the specified ID Refer to the property descriptions for each of these items. The ID of the Constraint Definition to store.
API-1024
ResetNextBC
5.4.2.2 ResetNextBC
ResetNextBC
( void ) Description: This method initializes all options prior to calling the NextBC method below Input: None Output: None Return Code: FE_OK Remarks/Usage: This method is used prior to calling NextBC to specify which constraints will be retrieved. It simply resets this object so that the next call to NextBC will return the first constraint available in the object. Example:
NextBC
API-1025
5.4.2.3 NextBC
NextBC
( pBC ) Description: This method returns the next available constraint that is contained in the Constraint Definition Input: OBJECT pBC Output: None Return Code: FE_FAIL Remarks/Usage: This method, coupled with ResetNextBC provides an easy way to retrieve all constraints from a Constraint Definition. Example: There are no more constraints of the specified type to retrieve. Call ResetNextBC to go back to the first constraint, if you want to retrieve the constraints again. The next constraint object. Depending on the type of the constraint definition this could be a BCNode, BCGeom or BEqn object
API-1026
5.5 BCEqn Objects
BCEqn objects correspond to the constraint equations in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for BCEqn. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feBCEqn method of the FEMAP Application object to create BCEqn objects.
The constraint color. The ID of the layer associated with the constraint. The ID of the constraint definition that contains this constraint (0=None)
API-1027
5.6 BCGeom Objects
BCGeom objects correspond to the geometry-based constraints in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for BCGeom. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feBCGeom method of the FEMAP Application object to create BCGeom objects.
REAL8 direction[0..2] or VARIANT vdirection INT4 outCSys INT4 BCDefinitionID Additional Properties
ID of constraint coordinate system for type=1 constraints. The ID of the constraint definition that contains this constraint (0=None)
API-1028
Property BOOL dofvec[0..5] Description Accesses all six components of the dof vector and returns them as a variant. Same as using dof independently.
GetSearch
API-1029
GetSearch
( geomType, geomID ) Description: This method searches for and retrieves an entity that is constraining a specified geometric entity. Input: INT4 geomType INT4 geomID Output: None Return Code: FE_FAIL Remarks/Usage: Since BCGeom objects are not stored by a specified ID, but rather in sequential order, the normal Get method may not be useful if you are trying to find the constraints on a specific geometric entity. The only way to do that would be to Get every constraint and check for the geometry that you want. This method does that for you. You specify the geometry you want to search for, and it returns the constraints on that entity. Be aware that this method does still search the entire set. If you are going to retrieve constraints on a large number of geometry entities, it could be faster to retrieve them all using Get, and discard the ones you do not want. Example: None The specified entity does not exist or is not constrained. Type of geometry being constrained: 3=Point, 4=Curve, 5=Surface. ID of geometry being constrained.
API-1030
SetSurfSliding
5.6.2.2 SetSurfSliding
SetSurfSliding
( INT4 surfID ) Description: This method initializes the current object to allow sliding along a surface. Input: INT4 surfID Output: None Return Code: None Remarks/Usage: This method does not store the constraint. You must still call Put to do that. It simply initializes the properties necessary to define this type of constraint. Example: None The ID of the surface to slide along
SetSurfNormal
API-1031
5.6.2.3 SetSurfNormal
SetSurfNormal
( INT4 surfID ) Description: This method initializes the current object to allow movement normal to a surface. Input: INT4 surfID Output: None Return Code: None Remarks/Usage: This method does not store the constraint. You must still call Put to do that. It simply initializes the properties necessary to define this type of constraint. Example: None The ID of the surface to move normal to.
API-1032
SetSurfDirection
5.6.2.4 SetSurfDirection
SetSurfDirection
( INT4 surfID, REAL8 x, REAL8 y, REAL8 z ) Description: This method initializes the current object to allow sliding of a surface in a specified direction. Input: INT4 surfID REAL8 x REAL8 y REAL8 z Output: None Return Code: None Remarks/Usage: This method does not store the constraint. You must still call Put to do that. It simply initializes the properties necessary to define this type of constraint. Example: None The ID of the surface to slide The Global X component of the permitted sliding direction The Global Y component of the permitted sliding direction The Global Z component of the permitted sliding direction
SetCylinder
API-1033
5.6.2.5 SetCylinder
SetCylinder
( INT4 surfID, BOOL radius, BOOL rotation, BOOL sliding ) Description: This method initializes the current object to allow sliding of a surface in cylindrical directions. Input: INT4 surfID BOOL radius BOOL rotation BOOL sliding Output: None Return Code: FE_FAIL Remarks/Usage: This method does not store the constraint. You must still call Put to do that. It simply initializes the properties necessary to define this type of constraint. Example: None The specified surface is not cylindrical. The ID of the surface to slide If True, allow growth of the radius of the cylinder. If True, allow rotation around the axis of the cylinder. If True, allow sliding along the axis of the cylinder.
API-1034
5.7 BCNode Objects
BCNode objects correspond to the nodal constraints in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for BCNodes. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feBCNode method of the FEMAP Application object to create BCNode objects.
Add
API-1035
5.7.2.1 Add
Add
( setID, bDOF1, bDOF2, bDOF3, bDOF4, bDOF5, bDOF6 ) Description: This method creates nodal constraints on all selected nodes Input: INT4 setID BOOL bDOF1 BOOL bDOF2 BOOL bDOF3 BOOL bDOF4 BOOL bDOF5 BOOL bDOF6 Output: None Return Code: FE_FAIL Remarks/Usage: Prior to using this method, you must properly specify the other parameters in the object - such as, color, layer and setID, and any other types required for your constraints. This method simply uses the data you specify here to overwrite specific values in the BCNode object, and create a new constraint for each entry in the set. Example: None The Constraints could not be created. The constraints to apply to the nodes. If True, the corresponding degree of freedom is constained. The ID of a Set object that contains the nodes to constraint. Alternatively, if you specify a negative value, this is simply the ID of the single node to constrain.
API-1036
5.7.2.2 AddArray
AddArray
AddArray
( count, doDOF, NodeID, DOF ) Description: This method creates multiple nodal constraints Input: INT4 count The number of constraints to create, and the number of IDs in NodeID If True, then the DOF array must contain degree-of-freedom flags to be used. If False, then whatever is specified in the current object is used and DOF is ignored The Node IDs where constraints will be created. One constraint is created on each ID. Flags specifying constraints on each specified node. 6 flags per node. Refer to dof property.
BOOL doDOF
INT4 NodeID[0..count-1] INT4 DOF[0..(6*count)-1] Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage:
The Constraints could not be created. Unable to allocate memory to store arrays of data.
Prior to using this method, you must properly specify the other parameters in the object - such as, color, layer and setID, and any other types required for your constraints. This method simply uses the data you specify here to overwrite specific values in the BCNode object, and create a new constraint for each entry in the arrays. Example: None
API-1037
5.8 BCSet Objects
BCSet objects correspond to the constraint sets in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for constraint sets. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feBCSet method of the FEMAP Application object to create BCSet objects.
API-1038
Expand
Expand
( void ) Description: This method expands all of the geometric constraints in a selected constraint set. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method takes the current constraint set object (uses the ID), and expands all of the geometric constraints in that set, so that they may be retrieved as normal mesh-based constraints. If you are using advanced geometric constraints (not just fixed and/or pinned), the resulting nodal output coordinate systems, and expanded constraints may depend on the sets you choose to expand. Expanding one set at a time may not yield the result that you expect. NOTE: This method only works with BCSets after they have been stored in the model database. If you are creating a new BCSet, only call this method after you have called Put(). Example: None The specified expansion did not work.
Compress
API-1039
5.8.2.2 Compress
Compress
( void ) Description: This method compresses all of the geometric constraints in a selected constraint set. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method takes the current constraint set object (uses the ID), and compresses (deletes) any expanded constraints. You are left with the unexpanded geometric constraints. NOTE: This method only works with BCSets after they have been stored in the model database. If you are creating a new BCSet, only call this method after you have called Put(). Example: None The specified compression did not work.
API-1040
ResetNextBC
5.8.2.3 ResetNextBC
ResetNextBC
( enDataType, bOtherBCOnly, bIncludeExpanded ) Description: This method initializes all options prior to calling the NextBC method below Input: INT4 enDataType The type of constraint entities to be retrieved. For entity information, see Section 3.3.6, "Entity Types". Can be FT_BCO, FT_BCO_GEOM, or FT_BEQ. If true, then only constraints that are not part of a constraint definition will be retrieved. Otherwise all are available. If True, expanded geometric constraints (if any) will be returned along with normal constraints. Ignored if enDataType = FT_BCO_GEOM.
BOOL bOtherBCOnly
This method is used prior to calling NextBC to specify which constraints will be retrieved. It also resets this object so that the next call to NextBC will return the first constraint available in the object. Example:
NextBC
API-1041
5.8.2.4 NextBC
NextBC
( pBC ) Description: This method returns the next available constraint that matches the criteria established by ResetNextBC Input: OBJECT pBC Output: None Return Code: FE_BAD_DATA FE_FAIL Remarks/Usage: This method, coupled with ResetNextBC provides an easy way to retrieve all constraints from a Constraint Set. Example: This example loops through all constraint sets retrieving all BCNode objects. For each it displays a message box. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim bs As femap.BCSet Set bs = App.feBCSet Dim b As femap.BCNode bs.ResetNextBC( FT_BCO, False, False ) While bs.Next() While bs.NextBC( b ) MsgBox(Str$(b.setID)+""+Str$(b.ID) ) Wend Wend End Sub The data type that you are trying to retrieve is invalid. There are no more constraints of the specified type to retrieve. Call ResetNextBC to go back to the first constraint, if you want to retrieve the constraints again. The next constraint object. Depending on the options specified, this could be a BCNode, BCGeom or BCEqn object
API-1042
ResetNextBCDef
5.8.2.5 ResetNextBCDef
ResetNextBCDef
( bAllDataTypes, enDataType ) Description: This method initializes all options prior to calling the NextBCDef method below Input: Used to limit the type of constraint definitions to be retrieved. If True, all selected constraint definitions will be returned. If False, only constraint definitions that contain constraints of the type specified in enDataType will be returned. The type of constraint entities to be retrieved. For entity information, see Section 3.3.6, "Entity Types". Can be FT_BCO, FT_BCO_GEOM, or FT_BEQ.
BOOL bAllDataTypes
This method is used prior to calling NextBCDef to specify which constraint definitions will be retrieved. It also resets this object so that the next call to NextBCDef will return the first constraint definition available in the object. Example:
NextBCDef
API-1043
5.8.2.6 NextBCDef
NextBCDef
( pBC ) Description: This method returns the next available constraint definition that matches the criteria established by ResetNextBCDef Input: OBJECT pBC Output: None Return Code: FE_FAIL Remarks/Usage: This method, coupled with ResetNextBCDef provides an easy way to retrieve all constraint definitions from a Constraint Set. Example: This example loops through all constraint sets retrieving all nodal BCDefinition objects, then loops through each BCDefinition to retrieve the individual constraints. For each it displays a message box. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim bs As femap.BCSet Set bs = App.feBCSet Dim bd As femap.BCDefinition Dim b As femap.BCNode bs.ResetNextBCDef( False, FT_BCO ) While bs.Next() While bs.NextBCDef( bd ) MsgBox( "BC Set"+Str$(bd.setID)+" BC Def"+Str$(bd.ID)) While bd.NextBC( b ) MsgBox( "BC On Node "+Str$(b.ID) ) Wend Wend Wend End Sub There are no more constraint definitions of the specified type to retrieve. Call ResetNextBCDef to go back to the first constraint definition, if you want to retrieve the constraints again. The next constraint definition object. This is always a BCDefinition object.
API-1044
GetCombination
5.8.2.7 GetCombination
GetCombination
( nCombo, nSetID ) Description: This method returns the data for a Nastran SPCADD/MPCADD Combination Set. Input: None Output: INT4 nCombo INT4 nSetID Return Code: FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: None Example: None This is not a Combination Constraint Set. No constraint sets are in the Combination. Number of entries in the combination. The IDs of the constraint sets in the combination.
PutCombination
API-1045
5.8.2.8 PutCombination
PutCombination
( nCombo, nSetID ) Description: This method sets the data in a Nastran SPCADD/MPCADD Combination Set. Input: INT4 nCombo INT4 nSetID Output: None Return Code: FE_NOT_EXIST FE_BAD_TYPE Remarks/Usage: One or more Combined Constraint Sets specfiied do not exist. One or more Combined Constraint Sets specfiied is a Constraint Combination. Number of entries in the combination. The IDs of the constraint sets in the combination.
Example: None
API-1046
PutCombination
API-1047
5.9 Connection Property Objects
Connection Property objects correspond to the connection properties in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Connection Property objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feConnectionProp method of the FEMAP Application object to create Connection Property objects.
Array of connection property flags accessed as an INT4. Most flags are simply true/false and can be accessed with flag( ).
API-1048
mu = pr.pval(0)
This approach provides great flexibility, but can be slow if you are going to work with a large number of properties. In this case it is best to access the data using Additional Properties. These all set and return entire arrays of values in one reference. For example, you could write:
Dim pr as Object Set pr = femap.feConnectionProp Dim v as Variant pr.Get(1) v = pr.pmat v(0)=0.3 v(1)=0.35 pr.pmat = v pr.Put(1)
This code loads Connection Property 1, retrieves the entire array of real values into v, updates the two coefficients of friction, puts the entire array back, and saves the updated Connection Property definition. While the code is slightly longer than simply accessing the individual properties, performance will be better using this approach.
API-1049
5.9.2.1 Connection Property Array Index Values
In general, most of the property data is simply stored in the various array properties. The location of the specific property data is defined in the following table.
Property Values (continued) CONTACT Flags 0 1 Values 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Abaqus Small Slide Abaqus Hcrit Abaqus Ext Zone Abaqus Smoothing Abaqus Tied Abaqus Weight Static Friction 1 Static Friction 2 Dynamic Friction Decay Viscous Damping
API-1050
Property Values (continued) CONTACT 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 Dyna Type Dyna One Way Dyna Offset Dyna Penalty Dyna Birth Dyna Death Dyna Scale Slave Penalty Stiffness Dyna Scale Master Penalty Stiffness Dyna Over Slave Thick Dyna Over Master Thick Dyna Scale Slave Thick Dyna Scale Master Thick Dyna Scale Coulomb Friction Dyna Scale Viscous Friction Dyna Out SF Dyna Out MF Dyna Rigid Func Dyna Rigid Force Dyna Rigid Unload Abaqus Thickness Abaqus Slide Dist Abaqus Friction Type Abaqus Friction Value Abaqus Max Shear Abaqus Adjust Abaqus Approach
API-1051
Property Values (continued) CONTACT 49 50 51 52 53 54 55 56 57 ... 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 Marc Tolerance Marc Sep Force Marc Inter Marc Disp Marc Friction Marc Stick Vel Marc Fr Stress Marc Con Type Marc Con Shell Marc Tol Bias Marc Beam Marc Sep Marc Sep Max Marc Sep Stress Marc Slip Coeff Marc Slip F Marc Slip Trans Marc Rig Avg Dyna Tie Norm Dyna Tie Shear Dyna Tie Norm Exp Dyna Tie Shear Exp Dyna Tie Function Dyna Erode Sym Dyna Erode Node Dyna Erode Solid Dyna Constraint
API-1052
Property Values (continued) CONTACT 83 100 101 102 103 104 105 106 107 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 Ansys Closure Ansys Min Pen Ansys Max Pen Ansys Close Stiff Ansys Open Stiff Ansys Norm Tol Ansys Pinball Ansys Surf Off Ansys Max Fric Ansys Penalty Type Ansys Node Cont Ansys Unsym Ansys No Spurious Ansys Shell Thick Ansys Cont Surf Ansys Init Pen Ansys Time Inc Sinda Type Sinda Coeff1 Sinda View Sinda Coeff2 Sinda Cfunc1 Sinda Vfunc Sinda Cfunc2 Sinda Cfunc3 Marc Rig Cutoff
API-1053
Property Values (continued) CONTACT 135 136 137 138 139 140 141 142 143 144 ... 145 146 147 148 149 150 151 152 153 154 155 156 NX/Nas601 Type NX/Nas601 NSide NX/Nas601 Birth Time NX/Nas601 Death Time NX/Nas601 Initial Penetration NX/Nas601 Penetration Depth NX/Nas601 Segment Normal NX/Nas601 Offset Type NX/Nas601 Offset Distance NX/Nas601 Initial Penetration Duration NX/Nas601 Consistant Stiffness NX/Nas601 Tied NE/Nastran Scale Fact NE/Nastran Fric Stiff NE/Nastran Static Friction NE/Nastran Pen Type
(9.2+) NE/Nastran (9.2+) (9.2+)
Max Penetration
Max Activation
API-1054
Property Values (continued) CONTACT 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 ... 175 176 177 178 179
(9.1+)
NX/Nas601 Tied Tolerance NX/Nas601 Surface Extention Factor NX/Nas601 Friction Model NX/Nas601 Friction Parameter 1 NX/Nas601 Friction Parameter 2 NX/Nas601 Friction Parameter 3 NX/Nas601 Friction Parameter 4 NX/Nas601 Friction Parameter 5 NX/Nas601 Eps N NX/Nas601 Eps T NX/Nas601 CFactor 1 NX/Nas601 Penetration Tolerance NX/Nas601 Normal Modulus NX/Nas601 Tangential Modulus NX/Nas601 Tensile Freeing Force NX/Nas601 Total Freeing Force
(9.3+) (9.3+)
tions
(9.1+)
(9.1+) NX/Nas101
gence Tolerance
API-1055
Property Values (continued) CONTACT 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 ... 200
(9.2+) NX/Nas701 (9.1+) NX/Nas101
Number of Allow
Contact Changes
(9.1+)
age
(9.1+) NX/Nas101 (9.1+) NX/Nas101 (9.1+) NX/Nas101 (9.1+)
Max Contact
Search Dist
(9.1+) NX/Nas101 Averaging Method (9.1+) (9.2+)
NX/Nas101 Gluing Zoffset NX/Nas101 INTORD NX/Nas101 REFINE NX/Nas101 NCHG TYPE NX/Nas101 PENTYPE CSTRAT GLUETYPE
(10.0+) (10.0+)
(10.1+) NX/Nas101
Friction
API-1056
Property Values (continued) CONTACT 201 202 203 204 205 206 207 208 209 2010 2011 2012 2013 2014 2015 2016
(9.2+)
Marc Friction
(9.2+)
NX/Nas601RTPMAX NX/Nas601FRICDLY
SLIDVEL
SetDefaults
API-1057
5.9.3.1 SetDefaults
SetDefaults
( ContactTolerance ) Description: This method initializes default values for the connection property. Input: Specifies the Max Contact Search Distance for NX Nastran Linear Contact, the Search Distance for NX Nastran Glued Contact, and the Tied Tolerance for NX Nastran Advnaced Nonlinear Contact. If you specify 0, FEMAP will automatically calculate the value (10 x model merge tolerance) Output: None Return Code: None Remarks/Usage: This is a simple method that allows default values to be placed into the object. Example: None
REAL8 ContactTolerance
API-1058
5.10 Connection Region Objects
Connection Region objects correspond to the connection regions in your model (in earlier versions, they were called Contact Objects and Contact Segments). They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Connection Region objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feConnectionRegion method of the FEMAP Application object to create Connection Region objects. For compatibility with earlier releases, you can also use feContact to create this object, however this method is obsolete.
API-1059
Property INT4 FluidYZSymmetry REAL8 FluidCharLength REAL8 FluidExactIntegFact Rotor Region Options INT4 RotorLoadSet REAL8 RotorOverallDamp REAL8 RotorMatlDamp REAL8 RotorSpeed ID of Load Set containing Rotational body loads to be applied Frequency for Overall Damping (W3) Frequency for Material Damping (W4) Rotor speed (not currently used) Description Symmetry Condition for YZ Plane (0=None, 1=Symmetric, 2=Antisymmetric) Fluid Characteristic Length Exact Integration factor for fluid
API-1060
GetContactList
GetContactList
( listcount, listTYPE, entityID, faceID, expanded ) Description: This method retrieves information from the contact list in a connection region. Input: None Output: INT4 listcount INT4 listTYPE[0..N] INT4 entityID[0..N] The number of entries in the other arrays. The type of entity in each list entry. Refer to Section 3.3.6, "Entity Types" for a list of types. The ID of the entity in each list entry. The ID of the entity face in each list entry (if applicable). INT4 faceID[0..N] For elements, this represents element face, while for curves and surfaces, 1=Positive Side, 2=Negative Side. Flag indicating that this is an expanded node/element entry from a geometry contact.
This method simply retrieves the information about the contact lists from the current object. You must first load that data - either using the Get( ) method, or by loading it yourself with PutContactList( ). Example: None
PutContactList
API-1061
5.10.2.2 PutContactList
PutContactList
( listcount, listTYPE, entityID, faceID, expanded ) Description: This method loads information into the contact list for a connection region. Input: INT4 listcount INT4 listTYPE[0..N] INT4 entityID[0..N] The number of entries in the other arrays. The type of entity specified in each entry. Refer to Section 3.3.6, "Entity Types" for a list of types. The ID of the entity specified in each entry. The ID of the face referenced by each entry (if applicable). INT4 faceID[0..N] For elements, this represents element face, while for curves and surfaces, 1=Positive Side, 2=Negative Side. Flag indicating whether each entry is an expanded node/element entry from a geometric contact.
This method stores information into the list of the current object. Any previous list information in that object is lost. This method does not store that information to the model database. After using this function, you must call Put( ) if you want to store the updated list in the database. Example: None
API-1062
GetEntities
5.10.2.3 GetEntities
GetEntities
( entityTYPE, bGetExpanded ) Description: This retrieves a set that contains all of the entities of a given type referenced by the region. Input: None Output: INT4 entityTYPE BOOL bGetExpanded Return Code: None Remarks/Usage: None Example: This method must be used with a Set statement to define the Set object. Dim App As femap.model Set App = GetObject(,"femap.model") Dim regn As femap.ConnectionRegion Set regn = App.feConnectionRegion Dim s As Object regn.Get(1) Set s = regn.GetEntities( FT_ELEM, True ) This sequence creates the s Set object with the list of elements that are referenced by Region 1. The type of entity that you want to select. Refer to Section 3.3.6, "Entity Types" for a list of types. If True, the region is first expanded - any selected geometric entities will also select associated nodes or elements.
AddContact
API-1063
5.10.2.4 AddContact
AddContact
( listTYPE, entityID, faceID ) Description: This method loads information into the contact list for a connection region. Unlike PutContactList, this method loads one entry at a time Input: INT4 listTYPE INT4 entityID The type of entity to be added. Refer to Section 3.3.6, "Entity Types" for a list of types. The ID of the entity specified The ID of the face referenced by each entity (if applicable). INT4 faceID For elements, this represents element face, while for curves and surfaces, 1=Positive Side, 2=Negative Side.
Output: None Return Code: None Remarks/Usage: This method stores information into the list of the current object. After using this function, you must call Put( ) if you want to store the updated list in the database. Example: None
API-1064
SetOutputType
5.10.2.5 SetOutputType
SetOutputType
( entityTYPE ) Description: This method sets the output type for the connection region. Input: INT4 entityTYPE Output: None Return Code: None Remarks/Usage: None Example: None The type of entity for output. Refer to Section 3.3.6, "Entity Types" for a list of types.
SetOffset
API-1065
5.10.2.6 SetOffset
SetOffset
( offset ) Description: This method sets the offset for the connection region. Input: REAL8 offset Output: None Return Code: None Remarks/Usage: None Example: None The value of the region offset.
API-1066
5.10.2.7 GetOffset
GetOffset
GetOffset
( offset ) Description: This method returns the offset for the connection region. Input: None Output: REAL8 offset Return Code: None Remarks/Usage: None Example: None The value of the region offset.
SetRigidType
API-1067
5.10.2.8 SetRigidType
SetRigidType
( offset ) Description: This method defines whether a connection region is rigid. Input: BOOLEAN isRigid Output: None Return Code: None Remarks/Usage: None Example: None Set to True for a rigid region, False otherwise
API-1068
IsRigidType
5.10.2.9 IsRigidType
IsRigidType
( void ) Description: This method indicates whether a connection region is rigid. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Region is not rigid ( FE_OK = Rigid )
Expand
API-1069
5.10.2.10 Expand
Expand
( void ) Description: This method expands all of the geometric connection regions in the model. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method expands all connection regions, not just the one in the current object. Example: None The specified expansion did not work.
API-1070
Compress
5.10.2.11 Compress
Compress
( void ) Description: This method compresses all of the geometric connection regions in the model. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method compresses all connection regions, not just the one loaded into the current object. Example: None The specified compression did not work.
Clear
API-1071
5.10.2.12 Clear
Clear
( void ) Description: This method clears and resets the contents of the connection region Input: None Output: None Return Code: None Remarks/Usage: None Example: None
API-1072
5.10.2.13 Reverse
Reverse
Reverse
( void ) Description: This method reverses the direction of the connection region. Input: None Output: None Return Code: None Remarks/Usage: None Example: None
Enable
API-1073
5.10.2.14 Enable
Enable
( bEnable ) Description: This method is used to enable or disable Fluid, Bolt or Rotor connection region. Input: BOOL bEnable Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Region is not proper type. Flag to set the state of the connection region.
API-1074
IsEnabled
5.10.2.15 IsEnabled
IsEnabled
( void ) Description: This method checks the state of the connection region. Input: None Output: None Return Code: FE_FAIL FE_OK Remarks/Usage: None Example: None Region is disabled. Region is enabled.
API-1075
5.11 Connection Objects
Connection objects correspond to the connections in your model. They are derived from Entity objects, so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Connection objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feConnection method of the FEMAP Application object to create Connection objects.
API-1076
5.11.2 Connection Object Methods
The following methods are available in addition to the standard entity methods.
Prop
API-1077
5.11.2.1 Prop
Prop
( void ) Description: This method creates and returns a Connection Property object that is loaded with the property data referenced by a connection Input: None Output: None Return Code: None Remarks/Usage:
Example: None
API-1078
5.11.2.2 Enable
Enable
Enable
( bEnable ) Description: This method enables and disables connections Input: BOOL bEnable Output: None Return Code: None Remarks/Usage: Enabled connections are translated for analysis, disabled ones are not. Example: None Enable connection if True, disables it if False
IsEnabled
API-1079
5.11.2.3 IsEnabled
IsEnabled
( void ) Description: This method indicates whether a connection is enabled Input: None Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Indicates connection is disabled (FE_OK if enabled)
API-1080
5.12 CSys Objects
CSys objects correspond to the coordinate systems in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for CSys objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feCSys method of the FEMAP Application object to create CSys objects.
REAL8 matrix[0..8]
XYPoints
API-1081
XYPoints
( origin, xaxis, xyplane ) Description: This method automatically updates the origin and rotations of a coordinate system based on three locations that you specify Input: REAL8 origin[0..2] REAL8 xaxis[0..2] REAL8 xyplane[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None The operation failed. You probably did not correctly specify one of the coordinate locations The origin of the coordinate system. This, and all other locations, must be specified in global rectangular coordinates. The coordinates of a point along the X Axis of the coordinate system. The coordinates of a point in the XY Plane of the coordinate system. This point does not need to lie along any of the coordinate axes.
API-1082
INT4 attrOrientType
API-1083
Property INT4 Engine INT4 Address BOOL Suppressed INT4 InternalToBoundary INT4 InCombinedCurve Mesh Sizing INT4 MeshElem[0..159] or VARIANT vMeshElem REAL8 MeshBias[0..159] or VARIANT vMeshBias REAL8 MeshMaxParam[0..159] or VARIANT vMeshMaxParam BOOL LengthSpacing[0..159] or VARIANT vLengthSpacing BOOL CenterBias[0..159] or VARIANT vCenterBias BOOL GeometricBias[0..159] or VARIANT vGeometricBias BOOL HasCustomMesh For BSplines only INT4 BSplineOrder INT4 BSplineNumPoints INT4 BSplinePoint[0..109] or VARIANT vBSplinePoint REAL8 BSplineKnot[0..120] or VARIANT vBSplineKnot The order of the BSpline. The number of keypoints used to define the BSpline. The IDs of the points used to define the Bspline. The number of elements associated with the curve or this segment of a custom mesh size. The bias factor for these elements. Description The ID of the solid modeling engine used with this curve: 0=None, 1=Parasolid, 2=ACIS. The solid modeling engine geometry address. True if this curve is suppressed (will not be meshed). If this curve is internal to a multi-surface boundary, this property contains the ID of the boundary, otherwise 0. If this curve is used to define a combined curve, this property contains the ID of the combined curve, otherwise 0
The s parametric value along the curve at the end of this segment. If you do not use a custom mesh size, this will always have MeshMaxParam[0] = 1.0. True if elements are sized with equal length spacing. False if parametric spacing is used. True if center biasing is used. False if end biasing is used.
API-1084
Property REAL8 BSplineWeight[0..120] or VARIANT vBSplineWeight REAL8 BSplineT0 REAL8 BSplineT1 BOOL BSplinePlanar BOOL BSplineClosed BOOL BSplineRational BOOL BSplinePeriodic True if the BSpline is planar. True if the BSpline is closed. True if the BSpline is rational. True if the BSpline is periodic. Description The weight values associated with the control points of the BSpline.
API-1085
5.13.1.1 The Curve Types
If you look at the curve Type property, you will see a list of seven available types. In fact, these seven types really comprise three categories: Standard Curves, BSplines and Solid Curves. Each category stores its point definitions differently. The following table shows the point definition for each curve type. Curve Type Line Arc Circle Spline BSpline Solid Combined StdPoint Point Location StdPoint StdPoint StdPoint StdPoint BSplinePoint [0]=start, [1]=end [0]=center, [1]=start, [2]=along in direction from start to end, [3]=end [0]=center, [1]=start/end, [2]=90 deg., [3]=180 deg., [4]=270 deg. [0]=start, [1]=first keypoint, [2]=second keypoint, [3]=end [0]=start, ... [BSplineNumPoints-1]=end Points are not defined, unless this is a solid curve that represents a line, in which case [0]=start,[1]=end. [0]=start, [1]=end Description
API-1086
Reverse
Reverse
( void ) Description: This method reverses the direction of a curve. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method will not work for solid curves. Example: None Unable to reverse the curve, probably a solid curve.
EndPoints
API-1087
5.13.2.2 EndPoints
EndPoints
( startPt, endPt ) Description: This method retrieves the IDs of the endpoints of the current curve. Input: None Output: INT4 startPt INT4 endPt Return Code: FE_FAIL Remarks/Usage: This method works for any stored curve. You must first call Get to load the curve from the database. It will not work with data you have loaded into a curve object but not yet stored. Example: None Unable to get the endpoints. Possibly curve has not been loaded, or not stored. The IDs of the starting and ending points on the curve.
API-1088
ArcCircleInfo
5.13.2.3 ArcCircleInfo
ArcCircleInfo
( center, normal, startPt, endPt, angle, radius ) Description: This method retrieves information about arcs and circles. Input: None Output: REAL8 center[0..2] REAL8 normal[0..2] REAL8 startPt[0..2] REAL8 endPt[0..2] REAL8 angle REAL8 radius Return Code: FE_FAIL Remarks/Usage: This method will only work for arc and circle curve types - not for solids that represent those types. Example: None Unable to get the information. Possibly the curve has not been loaded, or is not the correct type. The coordinates of the center of the circle. The vector components of the arc/circle normal direction. The coordinates of the starting point of the curve. The coordinates of the ending point of the curve. The subtended angle of the curve. The radius of the curve.
ParamToXYZ
API-1089
5.13.2.4 ParamToXYZ
ParamToXYZ
( s, xyz ) Description: This method retrieves the coordinates along the curve of a specified parametric location. Input: REAL8 s Output: REAL8 xyz[0..2] Return Code: FE_FAIL Remarks/Usage: This method will only work for any curve type. Example: None Unable to get the information. Possibly the curve has not been loaded. The coordinates of the parametric value along the curve. The parametric value (0<=s<=1) along the curve. 0=Start, 1=End.
API-1090
XYZToParam
5.13.2.5 XYZToParam
XYZToParam
( xyz, s ) Description: This method retrieves the parametric location along a curve closest to the specified coordinates. Input: REAL8 xyz[0..2] Output: REAL8 s Return Code: FE_FAIL Remarks/Usage: This method will only work for any curve type. Example: None Unable to get the information. Possibly the curve has not been loaded. The parametric value (0<=s<=1) along the curve. 0=Start, 1=End. The coordinates of the location of interest.
Project
API-1091
5.13.2.6 Project
Project
( fromXYZ, toXYZ ) Description: This method projects a location onto a curve. Input: REAL8 fromXYZ[0..2] Output: REAL8 toXYZ[0..2] Return Code: FE_FAIL Remarks/Usage: This method will only work for any curve type. Example: None Unable to get the information. Possibly the curve has not been loaded. The coordinates of the projected location. The coordinates of the initial location.
API-1092
5.13.2.7 Tangent
Tangent
Tangent
( outward, fromXYZ, tangent ) Description: This method finds the tangent to a curve at a specified location. Input: BOOL outward REAL8 fromXYZ[0..2] Output: REAL8 tangent[0..2] Return Code: FE_FAIL Remarks/Usage: This method will only work for any curve type. Example: None Unable to get the information. Possibly the curve has not been loaded. The vector components of the tangent. If True, the tangent along the first half of the curve (s<0.5) is computed in the opposite direction from the curve. If False, all tangents are computed in the curve direction from start to end. The coordinates of the initial location.
Length
API-1093
5.13.2.8 Length
Length
( void ) Description: This method returns the length of a curve. Input: None Output: None Return Code: Length Remarks/Usage: This method will only work for any curve type. Example: None The length of the curve. 0.0 for any invalid curve.
API-1094
PartialLength
5.13.2.9 PartialLength
PartialLength
( s0, s1 ) Description: This method returns the length of a curve between two parametric locations. Input: REAL8 s0 REAL8 s1 Output: None Return Code: Length Remarks/Usage: This method will only work for any curve type. The values for s0 and s1 must be between 0.0 and 1.0. s1 must be greater than s0. Example: None The length of the curve. 0.0 for any invalid curve. The starting parametric location. The ending parametric location.
ParamAtLength
API-1095
5.13.2.10 ParamAtLength
ParamAtLength
( fromstart, length ) Description: This method returns the parameter value at a specified distance from the end of a curve. Input: BOOL fromstart REAL8 length Output: None Return Code: S Remarks/Usage: This method will only work for any curve type. The length must be less than the total length of the curve. Example: None The parametric value corresponding to the location along the curve. If True, length is measured from the start of the curve. If False, it is measured from the end. The distance along the curve where the parameter value is determined.
API-1096
MeshParam
5.13.2.11 MeshParam
MeshParam
( numParam, meshParam ) Description: This method returns an array of parametric locations along the curve that are currently established as mesh locations, based on the mesh size specifications that are defined. Input: INT4 numParam REAL8 meshParam[0..numParam-1] Output: None Return Code: FE_FAIL Remarks/Usage: This method will only work for any curve type. The curve must however be Put to the database after any changes have been made to mesh sizing or this command may not return the proper locations. Example: Unable to determine the mesh locations. Possibly the curve has not been loaded or saved. The number of parametric locations in meshParam. The parametric locations along the curve where nodes will be meshed.
MeshParam
API-1097
MeshParam
( numParam, meshParam ) Sub Main() ' This function creates nodes at mesh locations ' on all curves in the model Dim Set Dim Set Dim Set Dim Dim Dim Dim App As femap.model App = GetObject(, "femap.model") cu As Object cu = App.feCurve nd As Object nd = App.feNode rc As Long n As Long meshloc As Variant ndloc As Variant
' Loop over all curves While cu.Next ' Get the mesh locations on the curves rc = cu.MeshParam(n, meshloc) If rc Then For i = 0 To n - 1 ' Find the nodal location and create a node rc = cu.ParamToXYZ(meshloc(i), ndloc) nd.xyz = ndloc nd.Put (nd.NextEmptyID) Next i End If Wend App.feViewRegenerate(0) End Sub
API-1098
AddMeshLoc
5.13.2.12 AddMeshLoc
AddMeshLoc
( s, numElem, spacing, biasMethod, bias, biasLoc ) Description: This method adds a custom mesh size location at the specified parametric location. Input: REAL8 s INT4 numElem INT4 spacing INT4 biasMethod REAL8 bias The parametric location along the curve - must be between 0.0 and 1.0 - where the mesh location will be added. The number of elements between this location and the preceding one (at the next lower s value). If 0, then parametric spacing is used; otherwise, constant length spacing is used. 0=Equal length spacing, 1=Linear Bias, 2=Geometric Bias. The bias value - greater than or equal to 1.0. A value of 1.0 is not biased. A value of 2.0 means that the largest element is approximately 2.0 times the length of the smallest. 0=Small elements at start of curve, 1=Small elements at end of curve, 2=Small elements at center of curve, 3=Small elements at both ends of curve.
Unable to add the mesh location. Possibly the curve has not been loaded or saved. Possibly there are already too many locations defined.
The curve should be loaded prior to using this method. This will always result in a custom mesh size being defined for the curve. You must always Put the curve to the database after finishing for the mesh locations to be saved. To redefine a mesh location, simply call this method again with the same value for s. Example: None
AddMeshLocXYZ
API-1099
5.13.2.13 AddMeshLocXYZ
AddMeshLocXYZ
( xyz, numElem, spacing, biasMethod, bias, biasLoc ) Description: This method adds a custom mesh size location at the specified coordinate location. Input: REAL8 xyz[0..2] The coordinates of the location for the mesh location. Must be in global rectangular. These coordinates are projected onto the curve to determine the corresponding parametric location. The number of elements between this location and the preceding one (at the next lower s value). If 0, then parametric spacing is used. Otherwise, constant length spacing is used. 0=Equal length spacing, 1=Linear Bias, 2=Geometric Bias. The bias value - greater than or equal to 1.0. A value of 1.0 is not biased. A value of 2.0 means that the largest element is approximately 2.0 times the length of the smallest. 0=Small elements at start of curve, 1=Small elements at end of curve, 2=Small elements at center of curve, 3=Small elements at both ends of curve.
Unable to add the mesh location. Possibly the curve has not been loaded or saved. Possibly there are already too many locations defined.
This method is essentially the same as AddMeshLoc, except that it uses a coordinate location instead of a parametric location. Example: None
API-1100
5.13.2.14 Nodes
Nodes
Nodes
( getBoundary, getInterior, numNodes, nodeID ) Description: This method returns the nodes that are attached to this curve Input: BOOL getBoundary BOOL getInterior Output: INT4 numNodes INT4 nodeID[0..numNodes-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: None Example: Unable to return nodes, possibly none exist. No nodes were attached to the curve in the manner you selected. Insufficient memory to allocate list of attached nodes. The number of nodes returned. The IDs of the selected nodes which are attached to the curve. If True, the nodes attached to the curve endpoints are selected If True, the nodes attached to the interior of the curve (not the endpoints) are selected
Nodes
API-1101
Nodes
( getBoundary, getInterior, numNodes, nodeID ) The following codes modifies the color of all nodes on Curve 4. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim Set Dim Set Dim Dim Dim Dim cu As Curve cu = App.feCurve nd As Object nd = App.feNode rc As Long Count As Long Nodes As Variant i As Long
rc = cu.Get (4) rc = cu.Nodes(True, True, Count, Nodes) For i = 0 To Count - 1 nd.Get (Nodes(i)) nd.color = 4 nd.Put (0) Next i App.feViewRegenerate(0) End Sub
API-1102
NodesAsSet
5.13.2.15 NodesAsSet
NodesAsSet
( getBoundary, getInterior, nSetID, bClear ) Description: This method returns the nodes that are attached to this curve in a Set Object Input: BOOL getBoundary BOOL getInterior INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage: Same as Nodes, except that the IDs are returned in a Set Object rather than an array. Example: None Unable to return nodes, possibly none exist. If True, the nodes attached to the curve endpoints are selected If True, the nodes attached to the interior of the curve (not the endpoints) are selected The ID of a Set Object to receive the Node IDs If True, the Set is cleared prior to loading the Node IDs
Elements
API-1103
5.13.2.16 Elements
Elements
( numElems, elemID ) Description: This method returns the elements that are attached to this curve Input: None Output: INT4 numElems INT4 elemID[0..numElems-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: Only elements that have all of their nodes on the curve will be returned by this method. Elements that simply touch the curve at one edge or one node will not be returned. Example: None Unable to return elements, possibly none exist. No elements were attached to the curve in the manner you selected. Insufficient memory to allocate list of attached elements. The number of elements returned. The IDs of the selected elements which are attached to the curve.
API-1104
ElementsAsSet
5.13.2.17 ElementsAsSet
ElementsAsSet
( nSetID, bClear ) Description: This method returns the elements that are attached to this curve in a Set Object Input: INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage: Only elements that have all of their nodes on the curve will be returned by this method. Elements that simply touch the curve at one edge or one node will not be returned. Same as Elements method except that IDs are returned in a Set rather than an array. Example: None Unable to return elements, possibly none exist. The ID of the Set Object that receives the Element IDs If True, the Set is cleared before it is loaded with Element IDs.
ElementsWithFaces
API-1105
5.13.2.18 ElementsWithFaces
ElementsWithFaces
( numElems, elemID ) Description: This method returns the elements that have faces which are attached to this curve Input: None Output: INT4 numElems INT4 elemID[0..numElems-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: This will return elements that have any face on the curve - including planar elements that have one edge along the curve. Planar elements that simply touch the curve at one corner/node will not be returned. Example: None Unable to return elements, possibly none exist. No elements were attached to the curve in the manner you selected. Insufficient memory to allocate list of attached elements. The number of elements returned. The IDs of the selected elements which have faces attached to the curve.
API-1106
BoundingBox
5.13.2.19 BoundingBox
BoundingBox
( Box ) Description: This method returns the coordinates of a rectangular box the encloses this geometry. Input: None Output: The dimensions of the bounding box, in Global Rectangular coordinates. Box[0] - Minimum X, Box[3] - Maximum X Box[1] - Minimum Y, Box[4] - Maximum Y Box[2] - Minimum Z, Box[5] - Maximum Z
INT4 Box[0..5]
Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method always retrieves a box that is aligned with Global Rectangular coordinates, not an aligned box of minimum volume. Example: None Unable to find a bounding box. Object does not contain valid geometry. This method only works for Parasolid-based geometry.
GetMeshLoc
API-1107
5.13.2.20 GetMeshLoc
GetMeshLoc
( numLoc, meshParam ) Description: Retrieves the parametric values along the curve of the mesh locations. Input: None Output: INT4 numLoc INT4 meshParam[0..numLoc1] Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to find mesh locations The number of mesh locations on the curve The parametric locations
API-1108
GetMeshLocXYZ
5.13.2.21 GetMeshLocXYZ
GetMeshLocXYZ
( numLoc, meshXYZ ) Description: Retrieves the global coordinates of the mesh locations along the curve. Input: None Output: INT4 numLoc INT4 meshXYZ[0..numLoc-1] Return Code: FE_FAIL Remarks/Usage: Similar to GetMeshLoc, but this method returns coordinate rather than parametric values. Example: None Unable to find mesh locations The number of mesh locations on the curve The global coordinates of the mesh locations
IsSmoothEdge
API-1109
5.13.2.22 IsSmoothEdge
IsSmoothEdge
( dAngle, nConvexityType ) Description: Determines whether the adjacent surfaces of a solid meet smoothly at this curve Input: REAL8 dAngle Output: INT4 nConvexityType Return Code: FE_FAIL FE_INVALID FE_NOT_AVAILABLE Remarks/Usage: None Example: None Unable to test smoothness and convexity Not smooth Curve is not a curve on a solid 0=Smooth and Flat, 1=Smooth and Convex, 2=Smooth and Concave, 3=Smooth with Inflection, 4=Smooth and Variable Convex/Concave The maximum angle that will be considered as smooth
API-1110
Surfaces
5.13.2.23 Surfaces
Surfaces
( nCombinedMode, numSurfaces, surfaceID ) Description: Returns an array of surfaces that reference this curve Input: 0=List contains the basic surfaces that are adjacent to the curve, 1=Any surfaces that are adjacent that are in a Combined Surface are replaced by the ID of the Combined Surface, 2=List contains both the underlying and combined surfaces.
INT4 nCombinedMode
Output: INT4 numSurfaces INT4 surfaceID[0..numSurfaces-1] Return Code: FE_FAIL Remarks/Usage: This function only works for Solid or Composite Curves that are defined on Solids. Same as SurfacesAsSet except IDs are returned in an Array rather than in a Set. Example: None Unable to get surfaces The number of surfaces in the returned array The IDs of the surfaces.
SurfacesAsSet
API-1111
5.13.2.24 SurfacesAsSet
SurfacesAsSet
( nCombinedMode, nSetID, bClear ) Description: Returns surfaces that reference this curve in a Set Object Input: 0=List contains the basic surfaces that are adjacent to the curve, 1=Any surfaces that are adjacent that are in a Combined Surface are replaced by the ID of the Combined Surface, 2=List contains both the underlying and combined surfaces. ID of the Set Object to receive the Surface IDs If True, the Set is cleared before loading the surfaces
INT4 nCombinedMode
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
This function only works for Solid or Composite Curves that are defined on Solids. Same as Surfaces, except that IDs are returned in the Set rather than in an array. Example: None
API-1112
5.13.2.25 Normal
Normal
Normal
( xyz, vNormal ) Description: Returns the average of the surface normals at a specified location along the curve Input: REAL8 xyz[0..2] Output: REAL8 vNormal[0..2] Return Code: FE_FAIL Remarks/Usage: This function finds all of the surfaces adjoining the curve and computes a normal to each surface at the specified location. The returned normal is simply the average of those surface normals. Example: None Unable to get surfaces The average surface normal at that location The Global Rectangular coordinates of a location along the curve where you want to find the normal
IsCombinedCurve
API-1113
5.13.2.26 IsCombinedCurve
IsCombinedCurve
( void ) Description: Indicates whether or not the curve is a combined curve Input: None Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: You can also use the type property of the curve to determine whether a curve is a combined curve. Example: None Curve is a combined curve Curve is not a combined curve
API-1114
GetCombinedCurves
5.13.2.27 GetCombinedCurves
GetCombinedCurves
( nNumCurves, curveID ) Description: Returns the IDs of the curves used to define a combined curve Input: None Output: INT4 nNumCurves The number of curves returned in curveID The IDs of the curves used to define a combined curve. The curves in this array are listed in the order they are used along the combined curve - starting at the beginning of the curve. If the direction of the returned curve is opposite that of the composite curve, then the ID in the array will be negative (i.e. if you see an entry in curveID like -7, that means that curve 7 is used in its reversed direction)
INT4 curveID[0..nNumCurves]
Return Code: FE_FAIL FE_INVALID Remarks/Usage: None Example: None Not a combined curve Invalid number of curves defining the composite curve
CombinedCurvesAsSet
API-1115
5.13.2.28 CombinedCurvesAsSet
CombinedCurvesAsSet
( nSetID, bClear ) Description: Returns the IDs of the curves used to define a combined curve Input: INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method is similar to GetCombinedCurves, however there is no indication of forward/reverse direction when using this method. All IDs are positive and stored in the Set Object. Example: None Not a combined curve Invalid number of curves defining the composite curve The ID of a Set that will receive the curve IDs If True, the Set is cleared prior to loading the curve IDs
API-1116
CombineCurves
5.13.2.29 CombineCurves
CombineCurves
( nNumCurves, curveID ) Description: Creates a combined curve from an array of underlying curves. Input: INT4 nNumCurves The number of curves supplied in curveID The IDs of the curves used to define a combined curve. The curves in this array must be listed in the order they will be used along the combined curve - starting at the beginning of the curve. If you need to reverse a curve, then you must supply its ID as a negative number (i.e. -ID) - then the usage of the curve in the combined curve will be in the opposite direction from the original curve.
INT4 curveID[0..nNumCurves]
Output: None Return Code: FE_FAIL FE_INVALID FE_NOT_EXIST Remarks/Usage: The curves supplied to this method must be properly ordered, connected and able to create a combined curve. Example: None Could not create combined curve. Too many curves specified. A supplied curve does not exist.
Facets
API-1117
5.13.2.30 Facets
Facets
( numPoints, xyzPoint ) Description: Returns the global rectangular coordinates of the locations along the curve that are used to draw the curve Input: None Output: INT4 numPoints REAL8 xyzPoint[0..(3*numPoints)-1] Return Code: FE_FAIL Remarks/Usage: The curve is drawn by simply connecting these locations sequentially. Example: None Could not retrieve facets. The number of points returned in xyzPoint The locations along the curve, stored [x0,y0,z0,x1,y1,z1,...]
API-1118
PartialLengthXYZ
5.13.2.31 PartialLengthXYZ
PartialLengthXYZ
( xyz0, xyz1 ) Description: This method returns the length of a curve between two XYZ locations. Input: REAL8 xyz0[0..2] REAL8 xyz1[0..2] Output: None Return Code: Length Remarks/Usage: This method will only work for any curve type. Example: None The length of the curve. 0.0 for any invalid curve. The coordinates of the location of interest. The coordinates of the location of interest.
PartialLengthNode
API-1119
5.13.2.32 PartialLengthNode
PartialLengthNode
( nID1, nID2 ) Description: This method returns the length of a curve between the Node locations that are closest to the curve. Input: INT4 nID1 INT4 nID2 Output: None Return Code: Length Remarks/Usage: This method will work for any curve type. Example: None The length of the curve. 0.0 for any invalid curve. The ID of the first Node. The ID of the second Node
API-1120
IsStraight
5.13.2.33 IsStraight
IsStraight
() Description: Determines whether the curve is a straight line Input: None Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: None Example: None Curve is a straight line Not a straight line.
IsNonManifold
API-1121
5.13.2.34 IsNonManifold
IsNonManifold
() Description: Determines whether the curve is nonmanifold Input: None Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: Nonmanifold curves are ones that bound more than 2 surfaces. Example: None Curve is nonmanifold Manifold curve
API-1122
IsSmooth
5.13.2.35 IsSmooth
IsSmooth
( dAngle ) Description: Determines whether the surfaces bounded by this curve are tangent within a specified angle along the curve Input: REAL8 dAngle Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: None Example: None Curve is smooth Not a smooth curve The maximum angle below which the curve is considered to be a smooth connection between the adjoining surfaces.
TangentAtEnds
API-1123
5.13.2.36 TangentAtEnds
TangentAtEnds
( outward, pvEnd1Tan, pvEnd2Tan ) Description: Determines whether the surfaces bounded by this curve are tangent within a specified angle along the curve Input: BOOL outward Output: REAL8 pvEnd1Tan[0..2] REAL8 pvEnd2Tan[0..2] Return Code: FE_BAD_TYPE FE_FAIL Remarks/Usage: This method is only supported for Solid and CompositeCurves. Example: None Curve type is not supported for this method Unable to compute tangents The tangent at the start of the curve The tangent at the end of the curve If true, the outward pointing tangents are computed at each end. If False, tangents along the curve in the parametric direction of the curve are computed.
API-1124
CurvatureAcrossEdge
5.13.2.37 CurvatureAcrossEdge
CurvatureAcrossEdge
( pdMinVal, pdMaxVal, pdAngleBetweenNormals ) Description: Finds the minimum and maximum curvature along the curve and the maximum angle between normals of the adjacent surfaces Input: None Output: REAL8 pdMinVal REAL8 pdMaxVal REAL8 pdAngleBetweenNormals Return Code: FE_BAD_TYPE FE_FAIL Remarks/Usage: This method is only supported for Solid and CompositeCurves. Example: None Curve type is not supported for this method Unable to compute values Minimum radius of curvature Maximum radius of curvature Maximum angle between the adjacent surface normals
ClosestPointToSurface
API-1125
5.13.2.38 ClosestPointToSurface
ClosestPointToSurface
( nSurfaceID, pdX, pdY, pdZ, pdDistance, pdAngleOfTangentToSurfaceNormal ) Description: Finds the closest point on the curve to a selected surface Input: INT4 nSurfaceID Output: REAL8 pdX REAL8 pdY REAL8 pdZ REAL8 pdDistance REAL8 pdAngleOfTangentToSurfaceNormal Return Code: FE_BAD_TYPE FE_FAIL FE_INVALID FE_NOT_AVAILABLE Remarks/Usage: This method is only supported for Solid and CompositeCurves. Example: None Curve type is not supported for this method Unable to compute values Unable to find closest approach Unable to locate selected surface The distance from the point to the surface The Angle betweent the Curve Tangent and the surface normal at the location of closest approach The coordinates of the closest location on the curve to the surface The surface to test for closest approach
API-1126
ClosestPointToSurface
API-1127
5.14 Data Surface Objects
Data Surface objects correspond to Femap Data Surfaces which are used to create spatial and entity based variations. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Data Surface objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feDataSurf method of the FEMAP Application object to create Data Surface objects.
INT4 OutMapOption
REAL8 DefOutMapValue1
REAL8 DefOutMapValue2
REAL8 DefOutMapValue3
API-1128
GetDataSurf
GetDataSurf
(EntID) Description: This method retrieves the Data Surface ID Input: INT4 EntID Output: None Return Code: FE_FAIL Remarks/Usage: Unable to get the data surface. ID of the Data Surface to retrieve.
Example:
PutDataSurf
API-1129
5.14.2.2 PutDataSurf
PutDataSurf
(EntID) Description: This method stores the Data Surface in the model database with the specified ID. Input: INT4 EntID Output: None Return Code: FE_FAIL Remarks/Usage: Unable to store the data surface. ID of the Data Surface to store.
Example:
API-1130
VarAlongCoord
5.14.2.3 VarAlongCoord
VarAlongCoord
(numEntries, xyz, val_xyz) Description: This method creates a Along Coordinates Data Surface. Input: INT4 numEntries REAL8 xyz[0..(3*numEntries)1] or VARIANT vxyz REAL8 val_xyz[0..(3*numEntries )-1] or VARIANT vval_xyz Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) AlongCoordProjectID Example: Unable to create the Data Surface. Number of variation locations used to create Data Surface xyz is an array of the variation coordinates. In the array, there must be 3 entries for each location, followed by the 3 for the next location.
val_xyz is an array of the variation values. In the array, there must be 3 entries for the variation location, followed by the 3 variation values for the next location. If Data Surface is a Scalar then just define the y,z values as zero.
VarBetween2Pts
API-1131
5.14.2.4 VarBetween2Pts
VarBetween2Pts
(xyz, val_xyz) Description: This method creates a Between Coordinates Data Surface with the 2 Point Linear Variation Type. Input: REAL8 xyz[0..(3*2)-1] or VARIANT vxyz REAL8 val_xyz[0..(3*2)-1] or VARIANT vval_xyz Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) csys Unable to create the Data Surface. xyz is an array of the variation coordinates. In the array, there must be 3 entries for each location, followed by the 3 for the next location. val_xyz is an array of the variation values. In the array, there must be 3 entries for the variation location, followed by the 3 variation values for the next location. If Data Surface is a Scalar then just define the y,z values as zero.
API-1132
VarBetween2Pts
VarBetween2Pts
(xyz, val_xyz) Example: Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim ds As femap.DataSurf Set ds = App.feDataSurf Dim xyz(6) As Double Dim xyzVal(6) As Double For j = 0 To 2-1 xyz(j*3+0) = xyz(j*3+1) = xyz(j*3+2) =
VarBetween4Pts
API-1133
5.14.2.5 VarBetween4Pts
VarBetween4Pts
(xyz, val_xyz) Description: This method creates a Between Coordinates Data Surface with the 4 Point Bilinear Variation Type. Input: REAL8 xyz[0..(3*4)-1] or VARIANT vxyz REAL8 val_xyz[0..(3*4)-1] or VARIANT vval_xyz Output: None Return Code: FE_FAIL Remarks/Usage: Data Surface Object properties that are valid: 1) csys Example: Unable to create the Data Surface. xyz is an array of the variation coordinates. In the array, there must be 3 entries for each location, followed by the 3 for the next location. val_xyz is an array of the variation values. In the array, there must be 3 entries for the variation location, followed by the 3 variation values for the next location. If Data Surface is a Scalar then just define the y,z values as zero.
API-1134
VarBetween8Pts
5.14.2.6 VarBetween8Pts
VarBetween8Pts
(xyz, val_xyz) Description: This method creates a Between Coordinates Data Surface with the 8 Point Trilinear Variation Type. Input: REAL8 xyz[0..(3*8)-1] or VARIANT vxyz REAL8 val_xyz[0..(3*8)-1] or VARIANT vval_xyz Output: None Return Code: FE_FAIL Remarks/Usage: Data Surface Object properties that are valid: 1) csys Example: Unable to create the Data Surface. xyz is an array of the variation coordinates. In the array, there must be 3 entries for each location, followed by the 3 for the next location. val_xyz is an array of the variation values. In the array, there must be 3 entries for the variation location, followed by the 3 variation values for the next location. If Data Surface is a Scalar then just define the y,z values as zero.
VarParametric2Pt
API-1135
5.14.2.7 VarParametric2Pt
VarParametric2Pt
(xyz, val_xyz) Description: This method creates a Between Coordinates Data Surface with the 2 Point Parametric Variation Type. Input: REAL8 xyz[0..(3*2)-1] or VARIANT vxyz REAL8 val_xyz[0..(3*2)-1] or VARIANT vval_xyz Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) csys 2) ParamCurveSurfID Example: Unable to create the Data Surface. xyz is an array of the variation coordinates. In the array, there must be 3 entries for each location, followed by the 3 for the next location. val_xyz is an array of the variation values. In the array, there must be 3 entries for the variation location, followed by the 3 variation values for the next location. If Data Surface is a Scalar then just define the y,z values as zero.
API-1136
VarParametric4Pt
5.14.2.8 VarParametric4Pt
VarParametric4Pt
(xyz, val_xyz) Description: This method creates a Between Coordinates Data Surface with the 4 Point Parametric Variation Type. Input: REAL8 xyz[0..(3*4)-1] or VARIANT vxyz REAL8 val_xyz[0..(3*4)-1] or VARIANT vval_xyz Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) csys 2) ParamCurveSurfID Example: Unable to create the Data Surface. xyz is an array of the variation coordinates. In the array, there must be 3 entries for each location, followed by the 3 for the next location. val_xyz is an array of the variation values. In the array, there must be 3 entries for the variation location, followed by the 3 variation values for the next location. If Data Surface is a Scalar then just define the y,z values as zero.
VarOutputMap
API-1137
5.14.2.9 VarOutputMap
VarOutputMap
(nModelID, groupID, outSetID, outVecID) Description: This method creates a Output Map Data Surface. Input: INT4 nModelID INT4 groupID INT4 outSetID INT4 outVecID Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) csys 2) OutMapOption 3) DefOutMapValue1 4) DefOutMapValue2 5) DefOutMapValue3 Example: Unable to create the Data Surface. ID of the source model containing output to be mapped. ID of group of entities in source model from which to map output. ID of output set containing data from which to map output. ID of output vector containing data from which to map output.
API-1138
VarMeshSurface
5.14.2.10 VarMeshSurface
VarMeshSurface
(setID, eDataType, sX, sY, sZ) Description: This method creates a Output Map Data Surface. Input: INT4 setID INT4 eDataType STRING sX STRING sY STRING sZ Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) csys Example: Unable to create the Data Surface. ID of the femap set containing the Data Surface entities. Type of entity in Data Surface. For more information, see Section 3.3.5, "Entity Types". Only Node and Element types are valid. String containing value or expression for x cell in Data Surface. String containing value or expression for y cell in Data Surface. String containing value or expression for z cell in Data Surface.
VarSpatialUVtable
API-1139
5.14.2.11 VarSpatialUVtable
VarSpatialUVtable
(uDivisions, vDivisions) Description: This method creates a Tabular Parametric uv Data Surface. Input: INT4 uDivisions INT4 vDivisions Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) TabularUdefOption 2) TabularUdefVal Example: Unable to create the Data Surface. Number of divisions in the u direction. Number of divisions in the v direction.
API-1140
VarSpatialXYZTable
5.14.2.12 VarSpatialXYZTable
VarSpatialXYZTable
(xDivisions, yDivisions, zDivisions) Description: This method creates a Output Map Data Surface. Input: INT4 xDivisions INT4 yDivisions INT4 zDivisions Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) csys 2) TabularUdefOption 3) TabularUdefVal Example: Unable to create the Data Surface. Number of divisions in the 1st dimension. Number of divisions in the 2st dimension. Number of divisions in the 3st dimension.
VarArbitrary3DCoord
API-1141
5.14.2.13 VarArbitrary3DCoord
VarArbitrary3DCoord
(numEntries, xyz, val_xyz) Description: This method creates a Arbitrary 3D Data Surface. Input: INT4 numEntries REAL8 xyz[0..(3*numEntries)1] or VARIANT vxyz REAL8 val_xyz[0..(3*numEntries)-1] or VARIANT vval_xyz Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) csys 2) InterpPercent 3) InterpMin Example: Unable to create the Data Surface. Number of variation locations in xyz, val_xyz arrays. xyz is an array of the variation coordinates. In the array, there must be 3 entries for each location, followed by the 3 for the next location.
val_xyz is an array of the variation values. In the array, there must be 3 entries for the variation location, followed by the 3 variation values for the next location. If Data Surface is a Scalar then just define the y,z values as zero.
API-1142
VarEquation
5.14.2.14 VarEquation
VarEquation
(equation) Description: This method creates a Arbitrary 3D Data Surface. Input: STRING Output: None Return Code: FE_FAIL Remarks/Usage: The following Data Surface Object properties that are valid: 1) csys Example: Unable to create the Data Surface. String containing equation.
GetCellValue
API-1143
5.14.2.15 GetCellValue
GetCellValue
(nPage, nRow, nCol, nComponent, dValue) Description: This method retrieves the value of a cell. Input: INT4 nPage INT4 nRow INT4 nCol INT4 nComponent Output: REAL8 dValue Return Code: FE_NOT_AVAILABLE Remarks/Usage: Cell is Blank Value of the cell. Page containing cell to retrieve value from Row containing cell to retrieve value from. Column containing cell to retrieve value from Component of the value vector in which to retrieve value from. Component: Scalar = 0, Vector = 0..3
Example:
API-1144
SetCellValue
5.14.2.16 SetCellValue
SetCellValue
(nPage, nRow, nCol, nComponent, rVal) Description: This method sets the value of a cell. Input: INT4 nPage INT4 nRow INT4 nCol INT4 nComponent REAL8 rVal Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: Cell does not exist Page containing cell to set value. Row containing cell to set value. Column containing cell to set value. Component of the value vector in which to set value for. Components: Scalar = 0, Vector = 0..3 Value to set.
Example:
SetCellEquation
API-1145
5.14.2.17 SetCellEquation
SetCellEquation
(nPage, nRow, nCol, nComponent, equation) Description: This method sets the equation of a cell. Input: INT4 nPage INT4 nRow INT4 nCol INT4 nComponent STRING equation Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: Cell does not exist Page containing cell to set. Row containing cell to set. Column containing cell to set. Component of the value vector in which to set. Components: Scalar = 0, Vector = 0..3 Equation to set the cell to.
Example:
API-1146
GetColumnTitle
5.14.2.18 GetColumnTitle
GetColumnTitle
(nPage, nCol, title) Description: This method retrieves the title of a column. Input: INT4 nPage INT4 nCol Output: STRING Title Return Code: FE_FAIL Remarks/Usage: Unable to get title. Title of column. Page containing column to retrieve title from Column retrieve title from.
Example:
GetColumnValue
API-1147
5.14.2.19 GetColumnValue
GetColumnValue
(nPage, nCol, rVal) Description: This method retrieves the value of a column. Input: INT4 nPage INT4 nCol Output: REAL8 rVal Return Code: FE_NOT_AVAILABLE Remarks/Usage: Column Value is blank. Value of column. Page containing column to retrieve value from Column retrieve value from.
Example:
API-1148
GetRowTitle
5.14.2.20 GetRowTitle
GetRowTitle
(nPage, nRow, sTitle) Description: This method retrieves the title of a row. Input: INT4 nPage INT4 nRow Output: STRING sTitle Return Code: FE_FAIL Remarks/Usage: Unable to get title. Title of row Page containing row to retrieve title from Row to retrieve title from.
Example:
SetRowTitle
API-1149
5.14.2.21 SetRowTitle
SetRowTitle
(nPage, nRow, sTitle) Description: This method sets the title of a row. Input: INT4 nPage INT4 nRow STRING sTitle Output: None Return Code: FE_FAIL Remarks/Usage: Unable to get title. Page containing row to set title for Row to set title for. Title of row.
Example:
API-1150
GetRowValue
5.14.2.22 GetRowValue
GetRowValue
(nPage, nRow, rVal) Description: This method retrieves the title of a row. Input: INT4 nPage INT4 nRow Output: REAL8 rVal Return Code: FE_NOT_AVAILABLE Remarks/Usage: Row is blank. Value of row Page containing row to retrieve value from Row to retrieve value from.
Example:
SetRowValue
API-1151
5.14.2.23 SetRowValue
SetRowValue
(nPage, nRow, sTitle) Description: This method sets the value of a row. Input: INT4 nPage INT4 nRow REAL8 rVal Output: None Return Code: FE_FAIL Remarks/Usage: Unable to set value. Page containing row to set value for. Row to set value for. Value of row.
Example:
API-1152
GetPageTitle
5.14.2.24 GetPageTitle
GetPageTitle
(nPage, sTitle) Description: This method retrieves the title of a page. Input: INT4 nPage Output: STRING sTitle Return Code: FE_FAIL Remarks/Usage: Unable to get title. Title of page. Page to retrieve title from.
Example:
SetPageTitle
API-1153
5.14.2.25 SetPageTitle
SetPageTitle
(nPage, sTitle) Description: This method sets the title of a page. Input: INT4 nPage STRING sTitle Output: None Return Code: FE_FAIL Remarks/Usage: Unable to set page title. Page to set title. Title of page.
Example:
API-1154
GetPageValue
5.14.2.26 GetPageValue
GetPageValue
(nPage, rVal) Description: This method retrieves the value of a page. Input: INT4 nPage Output: REAL8 rVal Return Code: FE_NOT_AVAILABLE Remarks/Usage: Unable to get value. Value of page. Page to retrieve value from.
Example:
SetPageValue
API-1155
5.14.2.27 SetPageValue
SetPageValue
(nPage, rval) Description: This method sets the value of a page. Input: INT4 nPage REAL8 rVal Output: None Return Code: FE_FAIL Remarks/Usage: Unable to set page value. Page to set value. Value of page.
Example:
API-1156
SetColumTitle
5.14.2.28 SetColumTitle
SetColumTitle
(nPage, nCol, sTitle) Description: This method set the title of a column. Input: INT4 nPage INT4 nCol STRING sTitle Output: None Return Code: FE_FAIL Remarks/Usage: Unable to set title. Page that contains the column to set. Column to set. Title to set.
Example:
SetColumValue
API-1157
5.14.2.29 SetColumValue
SetColumValue
(nPage, nCol, rVal) Description: This method sets the value of a column. Input: INT4 nPage INT4 nCol REAL8 Output: None Return Code: FE_FAIL Remarks/Usage: Unable to set value. Page that contains the column to set. Column to set. Value to set.
Example:
API-1158
SetCellBlank
5.14.2.30 SetCellBlank
SetCellBlank
(nPage, nRow, nCol, nComponent) Description: This method set a cell to blank. Input: INT4 nPage INT4 nRow INT4 nCol INT4 nComponent Output: None Return Code: FE_FAIL Remarks/Usage: Unable to set cell to blank. Page that contains the cell to set. Row containing cell to set. Column containing cell to set. Component of value vector to set.
Example:
GetDataSurfInfo
API-1159
5.14.2.31 GetDataSurfInfo
GetDataSurfInfo
(nPages, nComponent, sTitle) Description: This method retrieves Data Surface information. Input: None Output: INT4 nPages INT4 nComponent STRING sTitle Return Code: FE_FAIL Remarks/Usage: Unable to get Data Surface info. Number of Pages in Data Surface Number of components for Data Surface Title of Data Surface
Example:
API-1160
GetPageInfo
5.14.2.32 GetPageInfo
GetPageInfo
(nPage, nRows, nCols) Description: This method retrieves page information. Input: INT4 nPage Output: INT4 nRows INT4 nCols Return Code: FE_FAIL Remarks/Usage: Unable to get page info. Number of Row in page Number of Columns in page. Page to retrieve info for.
Example:
Resize
API-1161
5.14.2.33 Resize
Resize
(nPage, nRow, nCol, bVector) Description: This method resizes the Data Surface grid. Input: INT4 nPage INT4 nRow INT4 nCol BOOL bVector Output: None Return Code: FE_TOO_SMALL Remarks/Usage: Grid size is invalid. Number of Pages. Number of Rows. Number of Columns. Flag for vector Data Surface.
Example:
API-1162
Evaluate
5.14.2.34 Evaluate
Evaluate
(geomID, eDataType, MapSetID, isElemental) Description: This method Evaluates the Data Surface prior to calling GetData(). Input: INT4 geomID Geometry supplying parametric space. Between 2 Point Parametric Data Surface: ID of Curve Between 4 Point Parametric Data Surface: ID of Surface Type of entity Data Surface needs to be evaluated for. Between 2 Point Parametric Data Surface Type = Curve Between 4 Point Parametric Data Surface Type = Surface Mesh Data Surface Type = Node or Element For more information, see Section 3.3.5, "Entity Types". Only Node and Element types are valid. (Output Map Data Surface) ID of the Femap Set containing entities to map the Data Surface to. (Output Map Data Surface) Flag for elemental output.
INT4 DataType
INT4 MapSetID BOOL isElemental Output: None Return Code: FE_FAIL Remarks/Usage:
Example:
GetData
API-1163
5.14.2.35 GetData
GetData
(geomID, feaID, Coord, answer, valXYZ) Description: This method gets the computed Data Surface value at the independent variable. Input: INT4 geomID INT4 feaID IREAL8 Coord[0..3] or VARIANT Coord Output: REAL8 answer REAL8 valXYZ[0..3] or VARIANT valXYZ Return Code: None Remarks/Usage: Before calling GetData the Data Surface must first have been evaluated with Evaluate(). Example: Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim Set Dim Dim Dim Set dDim ds As femap.DataSurf ds = App.feDataSurf Coord(3) As Double ans As Double entSet As femap.Set entSet = App.feSet Computed value for Scalar Data Surface. Magnitude for Vector Data Surface. Computed vector components for Vector Data Surfaces. Between 2,4 Point Parametric Data Surface: ID of curve/surface supplying parametric space. Mesh, Output Map Data Surface: ID of mesh entity. Equation Data Surface: ID of Mesh entity for id variable. Along Coordinates, Between Coordinates, Tabular, Arbitrary 3D, Equation Data Surfaces: Location where the Data Surface will be evaluated at.
API-1164
GetData
GetData
(geomID, feaID, Coord, answer, valXYZ) Dim nd As femap.Node Set nd = App.feNode Dim output0 As femap.output Set output0 = App.feOutput Dim setID As Long Dim outset As femap.OutputSet Set outset = App.feOutputSet Dim ndIDV As Variant Dim thicknessV As Variant Dim ndLIST(100000) As Long Dim thick(100000) As Double Dim k As Long Dim i As Long ' Create Output Set setID = outset.NextEmptyID() outset.title = "Data Surface" outset.value = 0 outset.analysis = 0 outset.Put (setID) rc = output0.InitScalarAtNode(setID, 400000, "Interpolated Data", 6, True) k = i ' Get Nodes entSet.Select( FT_NODE, True, "Select Nodes to Get Data Surface Data" ) ' Get Data Surface and evaluate rc =ds.GetDataSurf(1) rc = ds.Evaluate( 0, 0, 0, False ) i = 0
GetData
API-1165
GetData
(geomID, feaID, Coord, answer, valXYZ) 'If entSet.count > 0 Then feaID = entSet.First() While feaID > 0 nd.Get(feaID) Coord(0) = nd.x Coord(1) = nd.y Coord(2) = nd.z ' Get Data Surface value at nodal location rc = ds.GetData( 0, feaID, Coord, ans, vXYZVal ) ndLIST(i) = feaID thick(i) = ans i = i +1 feaID = entSet.Next Wend k = entSet.count ndIDV = ndLIST thicknessV = thick rc = output0.PutScalarAtNode(k, ndIDV, thicknessV) rc = output0.Put(-1) End If End Sub
API-1166
GetDataSurfType
5.14.2.36 GetDataSurfType
GetDataSurfType
(void) Description: This method returns the Data Surface Type Input: None Output: None Return Code: The ID of the Data Surface Type. 0=Tabular Data Surface 1=Equation Data Surface 2=Nodes Data Surface 3=Elements Data Surface 4=Parametric 2 Point Data Surface 5=Parametric 4 Point Data Surface 6=Along Coordinates Data Surface 7=4 Point Bilinear Data Surface 8=8 Point Trilinear Data Surface 9=2 Point Linear Data Surface 10=Arbitrary 3-D Location Data Surface 11=Output Map Data Surface
type
Remarks/Usage:
Example:
API-1167
5.15 Element Objects
Element objects correspond to the elements in your model. They are derived from Entity objects, so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Element objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feElem method of the FEMAP Application object to create Element objects.
INT4 type
INT4 propID
INT4 topology
API-1168
Property INT4 formulation[0..1] or VARIANT vformulation INT4 contact[0..1] or VARIANT vcontact INT4 node[0..19] or VARIANT vnode REAL8 orient[0..2] or VARIANT vorient REAL8 offset[0..1][0..2] or VARIANT voffset BOOL release[0..1][0..5] or VARIANT vrelease Additional Properties INT4 nodes[0..19] BOOL RigidInterpolate REAL8 RigidThermalExpansion REAL8 RigidInterpolationFactor REAL8 PlateOffset REAL8 MaterialAngle INT4 connectTYPE[0..1] or VARIANT vconnectTYPE INT4 connectSEG[0..1] or VARIANT vconnectSEG Same as the node property but accesses the entire array as a Variant. Flag specifying whether an element with type=Rigid is really an interpolation element. Coefficient of thermal expansion for rigid elements Scale factor for Rigid Interpolation elements Specifies the offset value for plate elements. Specifies the material orientation angle for planar elements if MaterialAngleFlag=True. connectTYPE[0] specifies type of weld element. connectTYPE[1] Weld Location by: Projection=0 Axis=1 Node, Element or Property ID for weld patch A and B respecfor individual of weld types. Description Additional flags defining the element type.
Array of material IDs for each ply in a laminate. Nodes referenced by element. This array does not contain the nodes referenced by rigid or slide line elements, which store their nodes in a separate node list. Likewise, contact elements are handled separately. Element orientation vector for bar/beam. [0] contains material orientation angle for planar elements. In global rectangular coordinates. Offset vectors at ends of bar/beam elements. In global rectangular coordinates. offset[0][...] is at the first end of the element, offset[1][...] is at the second end. Release flags at ends of bar/beam elements. release[0][...] is at the first end of the element, release[1][...] is at the second end. The 6 second indices correspond to the degrees of freedom. This is also used for the DOFs of the independent node of Rigid Element using [0][...]
tively
API-1169
5.15.1.1 Accessing Element Nodes
For most elements, the node property will give you access to the IDs of the nodes that define the element. Before you can use this data, however, you must know where to find the nodes in the node array. The following table defines the layout for the various element types: Topology Point Line Tri3 Tri6 Quad4 Quad8 Tetra4 Wedge6 Brick8 Tetra10 Wedge15 Brick20 RigidList MultiList Contact Weld 0 0,1 0,1,2 0,1,2, (4,5,6) 0,1,2,3 0,1,2,3,(4,5,6,7) 0,1,2, 4 0,1,2, 4,5,6 0,1,2,3,4,5,6,7 0,1,2, 4 (8,9,10, 12,13,14) 0,1,2, 4,5,6 (8,9,10, 12,13,14, 16,17,18) 0,1,2,3,4,5,6,7,(8,9,10,11,12,13,14,15,16,17,18,19) 0=Independent, dependent nodes use element lists, not array entries Uses element lists, not array entries References contact segments, not nodes Weld Axis = 0,1 SegA= 4,5,6,( 7,8,9,10,11 ) SegB=12,13,14,( 15,16,17,18,19 ) Array Entries (optional/midside nodes in parentheses)
API-1170
GetAllArray
GetAllArray
( setID, numElem, entID, propID, elemTYPE, topology, layer, color, formulation, orient, offset, release, orientSET, orientID, Nodes, connectTYPE, connectSEG ) Description: This method retrieves arrays of values for a set of elements. Input: INT4 setID Output: INT4 numElem INT4 entID[0..numElem-1] INT4 propID[0..numElem-1] INT4 elemTYPE[0..numElem-1] INT4 topology[0..numElem-1] INT4 layer[0..numElem-1] INT4 color[0..numElem-1] INT4 formulation[0..(2*numElem)-1] REAL8 orient[0..(3*numElem)-1] REAL8 offset[0..(6*numElem)-1] The number of elements for which data is being returned. Each entry is the ID of the associated element. The property ID of the element. The element type. The element topology/shape. The ID of the layer for the element. The color of the element. The element formulation. There are 2 values per element. The element orientation vector, 3 values per element. The element offset vectors, 6 values per element. The first 3 at end 1, the second 3 at end 2. Flags indicating end releases. 12 values per element. The first 6 correspond to the elemental degrees of freedom at the first end of the element. The final 6 to the second end. Flag indicating whether material orientation is on for this element. The ID of the third/orientation node for the element. The node IDs used to define the element. Stored 20 values per element. Unused nodes are 0. Element types that reference lists of nodes (like rigid, slide lines or contact), will not have the nodes from their node lists in this array - you must use other methods to retrieve those nodes. ID of the set that contains the element IDs to retrieve. If 0, retrieve all elements in the model.
INT4 release[0..(12*numElem)-1]
INT4 Nodes[0..(20*numElem)-1]
GetAllArray
API-1171
GetAllArray
( setID, numElem, entID, propID, elemTYPE, topology, layer, color, formulation, orient, offset, release, orientSET, orientID, Nodes, connectTYPE, connectSEG ) INT4 connectTYPE[0..1] INT4 connectSEG[0..1] Error Codes: FE_FAIL Remarks/Usage: This method is the fastest way to retrieve information about a large number of elements. Example: Unable to retrieve data from the selected elements. connectTYPE[0] specifies type of weld element( 0 thru 6 ) connectTYPE[1] Weld Location by: Projection=0 Axis=1 Node, Element or Property ID for weld patch A and B respectively for individual of weld types.
API-1172
GetAllArray
GetAllArray
( setID, numElem, entID, propID, elemTYPE, topology, layer, color, formulation, orient, offset, release, orientSET, orientID, Nodes, connectTYPE, connectSEG ) Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Const MAX_NODES_PER_ELEM = 20 Dim Set Dim Set Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim Dim El As Object El = App.feElem elSet As Object elSet = App.feSet numElem As Long entID As Variant propID As Variant elemType As Variant topology As Variant Lyr As Variant color As Variant formulation As Variant orient As Variant offset As Variant release As Variant orientSET As Variant orientID As Variant nodes As Variant connectTYPE As Variant connectSEG As Variant
Dim Msg As String Dim findElemType As Integer findElemType = 17 'Linear Plate rc = elSet.AddRule(findElemType, FGD_ELEM_BYTYPE) rc = El.GetAllArray(elSet.ID, numElem, entID, propID, _ elemType, topology, Lyr, color, formulation,orient,offset, _ release, orientSET, orientID, nodes, connectTYPE, connectSEG ) App.feAppMessage(FCL_NORMAL, _ " Number of elements: " + Str$(numElem)) For i = 0 To numElem-1 ' Load ID, property, type, and nodes into String for display Msg = Str$(entID(i)) + ", "+Str$(propID(i)) + ", "+ _ Str$(elemType(i))
GetAllArray
API-1173
GetAllArray
( setID, numElem, entID, propID, elemTYPE, topology, layer, color, formulation, orient, offset, release, orientSET, orientID, Nodes, connectTYPE, connectSEG ) For u = 0 To MAX_NODES_PER_ELEM-1 If nodes(i*MAX_NODES_PER_ELEM + u) <> 0 Then Msg = Msg + ", "+ Str$(nodes(i*MAX_NODES_PER_ELEM + u)) End If Next u App.feAppMessage(FCM_NORMAL, Msg) Next i End Sub
API-1174
PutAllArray
5.15.2.2 PutAllArray
PutAllArray
( numElem, entID, propID, elemTYPE, topology, layer, color, formulation, orient, offset, release, orientSET, orientID, Nodes, connectTYPE, connectSEG ) Description: This method stores/creates multiple elements based on the values passed in various arrays. Input: INT4 numElem INT4 entID[0..numElem-1] INT4 propID[0..numElem-1] INT4 elemTYPE[0..numElem-1] INT4 topology[0..numElem-1] INT4 layer[0..numElem-1] INT4 color[0..numElem-1] INT4 formulation[0..(2*numElem)-1] REAL8 orient[0..(3*numElem)-1] REAL8 offset[0..(6*numElem)-1] The number of elements to create - the number of entries in the arrays Each entry is the ID of the associated element to be created The property ID of the element. The element type. The element topology/shape. The ID of the layer for the element. The color of the element. The element formulation. There are 2 values per element. The element orientation vector, 3 values per element. The element offset vectors, 6 values per element. The first 3 at end 1, the second 3 at end 2. Flags indicating end releases. 12 values per element. The first 6 correspond to the elemental degrees of freedom at the first end of the element. The final 6 to the second end. Flag indicating whether material orientation is on for this element. The ID of the third/orientation node for the element. The node IDs used to define the element. Stored 20 values per element. Unused nodes are 0. Element types that reference lists of nodes (like rigid, slide lines or contact), can not be created using this method - you must use Put to create those element types. connectTYPE[0] specifies type of weld element( 0 thru 6 ) connectTYPE[1] Weld Location by: Projection=0 Axis=1 Node, Element or Property ID for weld patch A and B respectively for individual of weld types.
INT4 release[0..(12*numElem)-1]
INT4 Nodes[0..(20*numElem)-1]
PutAllArray
API-1175
PutAllArray
( numElem, entID, propID, elemTYPE, topology, layer, color, formulation, orient, offset, release, orientSET, orientID, Nodes, connectTYPE, connectSEG ) Error Codes: FE_FAIL Remarks/Usage: This method is the fastest way to create a large number of elements. Example: None Unable to create the specified elements.
API-1176
GetNodeList
5.15.2.3 GetNodeList
GetNodeList
( listINDEX, nodecount, node, face, weight, dof ) Description: This method retrieves information from the node lists on rigid and slide line elements. Input: INT4 listINDEX Output: INT4 nodecount INT4 node[0..N] INT4 face[0..N] REAL8 weight[0..N] The number of entries in the other arrays (except dof, which has 6*nodecount entries). The IDs of the nodes in the list. The face numbers of any elements (not used). The weighting factors associated with the nodes for interpolation elements. The degree of freedom flags associated with the nodes. This array has six sequential entries for each node. For example, node[0] has entries dof[0]..dof[5] as its degree of freedom flags. node[1] has dof[6]..dof[11], and so on. The ID of the list to retrieve. For rigid elements, only list 0 is available. For slide lines, lists 0 and 1 are available.
INT4 dof[0..6N]
Return Code: FE_NOT_EXIST FE_NOT_AVAILABLE Remarks/Usage: This method simply retrieves the information about the node lists from the current object. You must first load that data - either using the Get( ) method, or by loading it yourself with PutNodeList( ). Example: None There are no entries in the list. You have requested an invalid list, check listINDEX.
PutNodeList
API-1177
5.15.2.4 PutNodeList
PutNodeList
( listINDEX, nodecount, node, face, weight, dof ) Description: This method loads information into the node lists on rigid and slide line elements. Input: INT4 listINDEX INT4 nodecount INT4 node[0..N] INT4 face[0..N] REAL8 weight[0..N] The ID of the list to retrieve. For rigid elements, only list 0 is available. For slide lines, lists 0 and 1 are available. The number of entries in the other arrays (except dof, which has 6*nodecount entries). The IDs of the nodes in the list. The face numbers of any elements (not used - must be NULL) The weighting factors associated with the nodes for interpolation elements. The degree of freedom flags associated with the nodes. This array has six sequential entries for each node. For example, node[0] has entries dof[0]..dof[5] as its degree of freedom flags. node[1] has dof[6]..dof[11], and so on.
INT4 dof[0..6N]
Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: This method stores information into the lists of the current object. Any previous list information in that object is lost. This method does not store that information to the model database. After using this function, you must call Put( ) if you want to store the updated lists in the database. Example: None You have requested an invalid list, check listINDEX.
API-1178
ClearNodeList
5.15.2.5 ClearNodeList
ClearNodeList
( listINDEX ) Description: This method clears node lists on rigid and slide line elements. Input: INT4 listINDEX Output: None Return Code: None Remarks/Usage: If there are node lists in the object, either because you added them with PutNodeList(), or because you called Get() on an element that had lists, this method will simply erase the selected list. You can use this if you want to clear the lists because you want to reuse the object for a different element type. Example: None The ID of the list to retrieve. For rigid elements, only list 0 is available. For slide lines, lists 0 and 1 are available. You may specify -1 to clear all lists in one call.
Prop
API-1179
5.15.2.6 Prop
Prop
( void ) Description: This method creates and returns a Property object that is loaded with the property data referenced by an element. Input: None Output: None Return Code: None Remarks/Usage:
Example: This method must be used with a Set statement to define the Property object. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim pr As Prop Dim el As Elem Set el = App.feElem el.Get(83) Set pr = el.Prop App.feAppMessage(FCM_NORMAL, "Property: " + Str$(pr.ID)+ _ " "+pr.title) End Sub
This sequence creates the pr Property object with the property data that is referenced by element 83.
API-1180
5.15.2.7 Matl
Matl
Matl
( void ) Description: This method creates and returns a Material object that is loaded with the material data referenced by an element. Input: None Output: None Return Code: None Remarks/Usage:
Example: This method must be used with a Set statement to define the Material object. Sub Main() Dim App As femap.model Set App = GetObject(,"femap.model") Dim pr As Prop Dim mt As Matl Set el = App.feElem el.Get(83) Set mt = el.Matl App.feAppMessage(FCM_NORMAL, "Material: " + Str$(mt.ID)+ _ " "+mt.title) End Sub This sequence creates the mt Material object with the property data that is referenced by element 83.
GetCentroid
API-1181
5.15.2.8 GetCentroid
GetCentroid
( cgXYZ ) Description: This method returns the centroid of the current element Input: None Output: REAL8 cgXYZ[0..2] Return Code: None Remarks/Usage: None Example: None The coordinates of the centroid of the element. Always reported in Global Rectangular coordinates.
API-1182
GetFaceCentroid
5.15.2.9 GetFaceCentroid
GetFaceCentroid
( nFace, cgXYZ ) Description: This method returns the centroid of a selected element face. Input: INT4 nFace Output: REAL8 cgXYZ[0..2] Return Code: None Remarks/Usage: The face identifiers are the same as the face numbers used when applying elemental loads. These are shown in the Element Reference in the User Manual. Only planar or solid elements can be used, but the edges of planar elements are valid. Example: None The coordinates of the centroid of the element face. Always reported in Global Rectangular coordinates. The identifier of the face that you want to select.
GetFaceNormal
API-1183
5.15.2.10 GetFaceNormal
GetFaceNormal
( nFace, normalXYZ ) Description: This method returns the normal vector of a selected element face. Input: INT4 nFace Output: REAL8 normalXYZ[0..2] Return Code: None Remarks/Usage: The face identifiers are the same as the face numbers used when applying elemental loads. These are shown in the Element Reference in the User Manual. Only planar or solid elements can be used, but the edges of planar elements are valid. For nonplanar faces, an approximate normal is computed as an average normal of the normals at the face corners. Example: None The vector components of the normal of the element face. Always reported in Global Rectangular coordinates. These vector components are always normalized. The identifier of the face that you want to select.
API-1184
GetFaceArea
5.15.2.11 GetFaceArea
GetFaceArea
( nFace, dArea ) Description: This method returns the area of a selected element face. Input: INT4 nFace Output: REAL8 dArea Return Code: None Remarks/Usage: The face identifiers are the same as the face numbers used when applying elemental loads. These are shown in the Element Reference in the User Manual. Only planar or solid elements can be used, but the edges of planar elements are valid. If the element has thickness, its average thickness is used along with the edge length to compute edge area. For axisymmetric elements, a thickness of 1.0 is used. Example: None The area of the element face. The identifier of the face that you want to select.
GetFaceNodes
API-1185
5.15.2.12 GetFaceNodes
GetFaceNodes
( nFace, nodes ) Description: This method returns the area of a selected element face. Input: INT4 nFace Output: INT4 nodes[0..7] Return Code: None Remarks/Usage: This method only works for Planar (Tria3, Tria6, Quad4 and Quad8) and Solid (Tetra4, Tetra10, Wedge6, Wedge15, Brick8 and Brick20) shaped elements. The face identifiers are the same as the face numbers used when applying elemental loads. These are shown in the Element Reference in the User Manual. Only planar or solid elements can be used, but the edges of planar elements are valid. Example: None The nodes used to define the selected face. Corner nodes always come first, followed by midside nodes. Most faces use less than 8 nodes, and the final node IDs will all be 0. The identifier of the face that you want to select.
API-1186
GetEdgeNodes
5.15.2.13 GetEdgeNodes
GetEdgeNodes
( nEdge, n1, n2, nmid ) Description: This method returns the nodes on the selected edge of the element. Input: INT4 nEdge Output: INT4 n1 INT4 n2 INT4 nmid Return Code: None Remarks/Usage: This method only works for Line (Line2 and Line3), Planar (Tria3, Tria6, Quad4 and Quad8) and Solid (Tetra4, Tetra10, Wedge6, Wedge15, Brick8 and Brick20) shaped elements. For Line elements, only edge 1 is available. For Planar elements, edge 1 connects the first and second nodes on the element, and proceed in order around the element connectivity. For Solid elements, the first edges are around the bottom face, followed by the edges connecting the bottom and top faces, and finally the top face edges. Example: None The first node used to define the edge The last node used to define the edge The midside node on the edge (0 if edge has no midside node) The identifier of the edge that you want to select.
IsParabolic
API-1187
5.15.2.14 IsParabolic
IsParabolic
( void ) Description: This method indicates if the loaded element is parabolic or not Input: None Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: None Example: None Element is Parabolic Element is not Parabolic
API-1188
Thickness
5.15.2.15 Thickness
Thickness
( dAvg, dAtC1, dAtC2, dAtC3, dAtC4 ) Description: This method returns the thickness of the element. Input: None Output: REAL8 dAvg REAL8 dAtC1 REAL8 dAtC2 REAL8 dAtC3 REAL8 dAtC4 Return Code: FE_OK FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: None Example: None Element type does not have thickness. Element does not reference a property. The average thickness of the element. The element thickness at corner 1. The element thickness at corner 2. The element thickness at corner 3. The element thickness at corner 4.
Length
API-1189
5.15.2.16 Length
Length
( dLength ) Description: This method returns the length of a Line Element. Input: None Output: REAL8 dLength Return Code: FE_BAD_TYPE Remarks/Usage: None Example: None Element is not correct type. The element Length
API-1190
5.15.2.17 Area
Area
Area
( dAreaA, dAreaB ) Description: This method returns the area at EndA and EndB of Line Element. Input: None Output: REAL8 dAreaA REAL8 dAreaB Return Code: FE_OK FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: None Example: None Element is not correct type. Element does not reference a property. The element area at EndA. The element area at EndB.
Inertia
API-1191
5.15.2.18 Inertia
Inertia
( dI1A, dI2A, dI12A, dJA, dI1B, dI2B, dI12B, dJB ) Description: This method returns line element properties at EndA and EndB. Input: None Output: REAL8 dI1A REAL8 dI2A REAL8 dI12A REAL8 dIJA REAL8 dI1B REAL8 dI2B REAL8 dI12B REAL8 dIJB Return Code: FE_OK FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: None Example: None Element is not a line type. Element does not reference a property. Area Moment of Inertia for plane 1 EndA Area Moment of Inertia for plane 2 EndA Cross product of inertia at EndA Torsional constant EndA Area Moment of Inertia for plane 1 EndB Area Moment of Inertia for plane 2 EndB Cross product of inertia at EndB Torsional constant EndB
API-1192
GetMinMaxEdgeLength
5.15.2.19 GetMinMaxEdgeLength
GetMinMaxEdgeLength
( dMinLen, dMaxLen ) Description: Finds the minimum and maximum length of edges in the element Input: None Output: REAL8 dMinLen REAL8 dMaxLen Return Code: FE_OK FE_INVALID Remarks/Usage: None Example: None Element is not a supported type - only line, planar and solid elements are supported The minimum edge length The maximum edge length
API-1193
5.16 Function Objects
Function objects correspond to the functions in your model. They are derived from Entity objects, so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Function objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feFunction method of the FEMAP Application object to create Function objects.
INT4 type
API-1194
GetFunctionList
5.16.2.1 GetFunctionList
GetFunctionList
( listcount, x, y ) Description: This method retrieves function pair information. Input: None Output: INT4 listcount REAL8 x[0..N] REAL8 y[0..N] Return Code: FE_NOT_EXIST Remarks/Usage: This method simply retrieves the information about the function pairs from the current object. You must first load that data - either using the Get( ) method, or by loading it yourself with PutFunctionList( ). Data retrieved from the database using Get, will always be in order of ascending X values. Example: None There are no entries in the list. The number of entries in the other arrays. The x and y values for the function..
PutFunctionList
API-1195
5.16.2.2 PutFunctionList
PutFunctionList
( listcount, x, y ) Description: This method saves function pair information. Input: INT4 listcount REAL8 x[0..N] REAL8 y[0..N] Output: Return Code: None Remarks/Usage: This method stores information into the list of the current object. Any previous list information in that object is lost. This method does not store that information to the model database. After using this function, you must call Put( ) if you want to store the updated list in the database. Data to be stored in the database will be sorted into order of increasing x values. It is not required, however, Put performance will be improved if you provide the x,y pairs in sorted order. Example: None The number of entries in the other arrays. The x and y values for the function.
API-1196
5.16.2.3 GetValue
GetValue
GetValue
( nMethod, x, y ) Description: This method evaluates the function to find a y value given an x value. Input: The method to be used to find the y value. 0=Before (return the y value of the function at the x value before the specified x) 1=After (return the y value of the function at the xvalue after the specified x ) 2=Closest (return the y value of the function at the x value closest to the specified x) 3=Interpolate, Linear-Linear (return the y value at the specified "x" location by linearly interpolating the function x values and the function y values). 4=Interpolate, Log-Log (return the y value at the specified "x" location by linearly interpolating the log of the function x values and the log of the function y values). 5=Interpolate, Linear-Log (return the y value at the specified "x" location by linearly interpolating the function x values and the log of the function y values). 6=Interpolate, Log-Linear (return the y value at the specified "x" location by linearly interpolating the log of the function x values and the function y values). The location where the function is evaluated
INT4 nMethod
If you use nMethod=0 then x must be above the lowest x value in the function, or for nMethod=1 x must be below the highest x value, or else the function can not be evaluated with this method. Evaluation failed. Probably because insufficient (or no) points have been defined in the function.
FE_FAIL Remarks/Usage:
The Closest method returns one of the endpoints of the function if you specify an x value that is outside the defined range of the function. The Interpolate method uses the first/last two points in the function and linearly extrapolates to find values beyond the defined range of the function. If you attempt to interpolate on a function with only one defined value, you will simply get that value for every location.
GetValue
API-1197
API-1198
5.17 GFXArrow Objects
GFXArrow objects correspond to user-creatable graphics arrows in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for nodes. For more information, see Section 5.1, "Common Entity Properties and Methods". Simply creating user-graphics objects will not make them visible in your model. You must also use the methods described in Section 3.17, "User Graphics Methods", to select the data/set to display and the views where you want to display your graphics. Use the feGFXArrow method of the FEMAP Application object to create GFXArrow objects.
PutAll
API-1199
PutAll
( entID, x, y, z, dx, dy, dz, length, lengthmode, layer, color, style ) Description: This method stores an entity with the specified ID. Input: INT4 entID REAL8 x REAL8 y REAL8 z REAL8 dx REAL8 dy REAL8 dz REAL8 length INT4 lengthmode INT4 layer INT4 color INT4 style Output: None Return Code: FE_FAIL Remarks/Usage: Unlike the standard Put method, this function loads all of the properties as arguments. If you are updating all of the properties before storing an entity, this function will be faster than multiple calls to load each property individually. Example: None Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. The ID of the entity to store.
API-1200
PutAllArray
5.17.2.2 PutAllArray
PutAllArray
( numAr, entID, xyz, dxyz, length, lengthmode, layer, color, style ) Description: This method stores multiple GFXArrow entities with the specified data. Input: INT4 numAr INT4 entID[0..numAr-1] REAL8 xyz[0..(3*numar)-1] REAL8 dxyz[0..(3*numar)-1] REAL8 length[0..numAr-1] INT4 lengthmode[0..numAr-1] INT4 layer[0..numAr-1] INT4 color[0..numAr-1] INT4 style[0..numAr-1] Output: None Return Code: FE_FAIL Remarks/Usage: This is the fastest Put method if you have a large number of items to create, but still need full control over all options. All data can be accumulated in arrays and then transferred in one call. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 3 entries for a entity, followed by the 3 for the next entity, ... .The dxyz array is stored similarly. The other arrays have just one entry per arrow. All must be in global rectangular coordinates. The number of GFXArrows to create (i.e. the number of entries in the arrays) The IDs of the GFXArrows to store.
PutCoordArray
API-1201
5.17.2.3 PutCoordArray
PutCoordArray
( numAr, xyz, dxyz, length, lengthmode, layer, color, style ) Description: This is a simpler version of PutAllArray that allows multiple entities to be stored. Input: INT4 numAr REAL8 xyz[0..(3*numar)-1] REAL8 dxyz[0..(3*numar)-1] REAL8 length[0..numAr-1] INT4 lengthmode INT4 layer INT4 color INT4 style Output: None Return Code: FE_FAIL Remarks/Usage: This method is even faster than PutAllArray, and requires less memory, it does not however give you full control. Entities are simply stored in the next available ID, and the same layer, color... are used for every entity - only the coordinates are input as an array. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 3 entries for a entity, followed by the 3 for the next entity, ... .The dxyz array is stored similarly. The other arrays have just one entry per arrow. All must be in global rectangular coordinates. The number of GFXArrows to create (i.e. the number of entries in the arrays)
API-1202
5.17.2.4 DeleteAll
DeleteAll
DeleteAll
( bAllSets, nSetID ) Description: Deletes all GFXArrows in one or more sets Input: BOOL bAllSets INT4 nSetID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to delete entities If True, all entities, in all sets are deleted. If False, then all entities in Set nSetID are deleted The setID to delete if bAllSets=False
DeleteAll
API-1203
API-1204
5.18 GFXLine Objects
GFXLine objects correspond to user-creatable graphics lines in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for nodes. For more information, see Section 5.1, "Common Entity Properties and Methods". Simply creating user-graphics objects will not make them visible in your model. You must also use the methods described in Section 3.17, "User Graphics Methods", to select the data/set to display and the views where you want to display your graphics. Use the feGFXLine method of the FEMAP Application object to create GFXLine objects.
PutAll
API-1205
PutAll
( entID, x1, y1, z1, x2, y2, z2, layer, color ) Description: This method stores an entity with the specified ID. Input: INT4 entID REAL8 x1 REAL8 y1 REAL8 z1 REAL8 x2 REAL8 y2 REAL8 z2 INT4 layer INT4 color Output: None Return Code: FE_FAIL Remarks/Usage: Unlike the standard Put method, this function loads all of the properties as arguments. If you are updating all of the properties before storing an entity, this function will be faster than multiple calls to load each property individually. Example: None Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. The ID of the entity to store.
API-1206
PutAllArray
5.18.2.2 PutAllArray
PutAllArray
( numLn, entID, xyz, layer, color ) Description: This method stores multiple GFXLine entities with the specified data. Input: INT4 numLn INT4 entID[0..numLn-1] REAL8 xyz[0..(2*3*numLn)-1] INT4 layer[0..numLn-1] INT4 color[0..numLn-1] Output: None Return Code: FE_FAIL Remarks/Usage: This is the fastest Put method if you have a large number of items to create, but still need full control over all options. All data can be accumulated in arrays and then transferred in one call. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. The number of GFXLines to create (i.e. the number of entries in the arrays) The IDs of the GFXLines to store. Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 6 entries for a entity (3 for the first end then 3 for the second end), followed by the 6 for the next entity, ... . All must be in global rectangular coordinates.
PutCoordArray
API-1207
5.18.2.3 PutCoordArray
PutCoordArray
( numLn, xyz, layer, color ) Description: This is a simpler version of PutAllArray that allows multiple entities to be stored. Input: INT4 numLn REAL8 xyz[0..(2*3*numLn)-1] INT4 layer INT4 color Output: None Return Code: FE_FAIL Remarks/Usage: This method is even faster than PutAllArray, and requires less memory, it does not however give you full control. Entities are simply stored in the next available ID, and the same layer, color... are used for every entity - only the coordinates are input as an array. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. The number of GFXLines to create (i.e. the number of entries in the arrays) Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 6 entries for a entity (3 for the first end then 3 for the second end), followed by the 6 for the next entity, ... . All must be in global rectangular coordinates.
API-1208
5.18.2.4 DeleteAll
DeleteAll
DeleteAll
( bAllSets, nSetID ) Description: Deletes all GFXLines in one or more sets Input: BOOL bAllSets INT4 nSetID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to delete entities If True, all entities, in all sets are deleted. If False, then all entities in Set nSetID are deleted The setID to delete if bAllSets=False
DeleteAll
API-1209
API-1210
5.19 GFXPoint Objects
GFXPoint objects correspond to user-creatable graphics points in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for nodes. For more information, see Section 5.1, "Common Entity Properties and Methods". Simply creating user-graphics objects will not make them visible in your model. You must also use the methods described in Section 3.17, "User Graphics Methods", to select the data/set to display and the views where you want to display your graphics. Use the feGFXPoint method of the FEMAP Application object to create GFXPoint objects.
PutAll
API-1211
PutAll
( entID, x, y, z, layer, color, symbol ) Description: This method stores an entity with the specified ID. Input: INT4 entID REAL8 x REAL8 y REAL8 z INT4 layer INT4 color INT4 symbol Output: None Return Code: FE_FAIL Remarks/Usage: Unlike the standard Put method, this function loads all of the properties as arguments. If you are updating all of the properties before storing an entity, this function will be faster than multiple calls to load each property individually. Example: None Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. The ID of the entity to store.
API-1212
PutAllArray
5.19.2.2 PutAllArray
PutAllArray
( numPt, entID, xyz, layer, color, symbol ) Description: This method stores multiple GFXPoint entities with the specified data. Input: INT4 numPt INT4 entID[0..numPt-1] REAL8 xyz[0..(3*numPt)-1] INT4 layer[0..numPt-1] INT4 color[0..numPt-1] INT4 symbol[0..numPt-1] Output: None Return Code: FE_FAIL Remarks/Usage: This is the fastest Put method if you have a large number of items to create, but still need full control over all options. All data can be accumulated in arrays and then transferred in one call. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. The number of GFXPoints to create (i.e. the number of entries in the arrays) The IDs of the GFXPoints to store. Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 3 entries for a entity, followed by the 3 for the next entity, ... . All must be in global rectangular coordinates.
PutCoordArray
API-1213
5.19.2.3 PutCoordArray
PutCoordArray
( numPt, xyz, layer, color, symbol ) Description: This is a simpler version of PutAllArray that allows multiple entities to be stored. Input: INT4 numPt REAL8 xyz[0..(3*numPt)-1] INT4 layer INT4 color INT4 symbol Output: None Return Code: FE_FAIL Remarks/Usage: This method is even faster than PutAllArray, and requires less memory, it does not however give you full control. Entities are simply stored in the next available ID, and the same layer, color... are used for every entity - only the coordinates are input as an array. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. The number of GFXPoints to create (i.e. the number of entries in the arrays) Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 3 entries for a entity, followed by the 3 for the next entity, ... . All must be in global rectangular coordinates.
API-1214
5.19.2.4 DeleteAll
DeleteAll
DeleteAll
( bAllSets, nSetID ) Description: Deletes all GFXPoints in one or more sets Input: BOOL bAllSets INT4 nSetID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to delete entities If True, all entities, in all sets are deleted. If False, then all entities in Set nSetID are deleted The setID to delete if bAllSets=False
DeleteAll
API-1215
API-1216
5.20 GFXQuad4 Objects
GFXQuad4 objects correspond to user-creatable graphics quads in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for nodes. For more information, see Section 5.1, "Common Entity Properties and Methods". Simply creating user-graphics objects will not make them visible in your model. You must also use the methods described in Section 3.17, "User Graphics Methods", to select the data/set to display and the views where you want to display your graphics. Use the feGFXQuad4 method of the FEMAP Application object to create GFXQuad4 objects.
BOOL autonormal
PutAll
API-1217
PutAll
( entID, xyz, edgeflags, normal, autonormal, layer, fillcolor, edgecolor ) Description: This method stores an entity with the specified ID. Input: INT4 entID REAL8 xyz[0..11] INT4 edgeflags REAL8 normal[0..11] BOOL autonormal INT4 layer INT4 fillcolor INT4 edgecolor Output: None Return Code: FE_FAIL Remarks/Usage: Unlike the standard Put method, this function loads all of the properties as arguments. If you are updating all of the properties before storing an entity, this function will be faster than multiple calls to load each property individually. Example: None Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. The ID of the entity to store.
API-1218
PutAllArray
5.20.2.2 PutAllArray
PutAllArray
( numQd, entID, xyz, edgeflags, normal, autonormal, layer, fillcolor, edgecolor ) Description: This method stores multiple GFXQuad4 entities with the specified data. Input: INT4 numQd INT4 entID[0..numQd-1] REAL8 xyz[0..(4*3*numQd)1] INT4 edgeflags[0..numQd-1] REAL8 normal [0..(4*3*numQd)-1] BOOL autonormal[0..numQd1] INT4 layer[0..numQd-1] INT4 fillcolor[0..numQd-1] INT4 edgecolor[0..numQd-1] Output: None Return Code: FE_FAIL Remarks/Usage: This is the fastest Put method if you have a large number of items to create, but still need full control over all options. All data can be accumulated in arrays and then transferred in one call. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 12 entries for a entity (3 for the first corner, 3 for the 2nd, ...), followed by the 12 for the next entity, ... . The normal array is stored similarly, but contains the components of the normal vectors. All other arrays contain one entry per quad. All must be in global rectangular coordinates. The number of GFXQuad4s to create (i.e. the number of entries in the arrays) The IDs of the GFXQuad4s to store.
PutCoordArray
API-1219
5.20.2.3 PutCoordNormalArray
PutCoordArray
( numQd, xyz, layer, fillcolor, edgecolor ) Description: This is a simpler version of PutAllArray that allows multiple entities to be stored, and still allows you to specify the quad normal vectors. Input: INT4 numQd REAL8 xyz[0..(4*3*numQd)1] INT4 edgeflags[0..numQd-1] REAL8 normal [0..(4*3*numQd)-1] BOOL autonormal INT4 layer INT4 fillcolor INT4 edgecolor Output: None Return Code: FE_FAIL Remarks/Usage: This method is even faster than PutAllArray, and requires less memory, it does not however give you full control. Entities are simply stored in the next available ID, and the same layer, color... are used for every entity - only the coordinates, edgeflags and normals are input as arrays. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 12 entries for a entity (3 for the first corner, 3 for the 2nd, ...), followed by the 12 for the next entity, ... . The normal array is stored similarly, but contains the components of the normal vectors. All other arrays contain one entry per quad. All must be in global rectangular coordinates. The number of GFXQuad4s to create (i.e. the number of entries in the arrays)
API-1220
PutCoordArray
5.20.2.4 PutCoordArray
PutCoordArray
( numQd, xyz, layer, fillcolor, edgecolor ) Description: This is a simpler version of PutAllArray that allows multiple entities to be stored. Input: INT4 numQd REAL8 xyz[0..(4*3*numQd)1] INT4 layer INT4 fillcolor INT4 edgecolor Output: None Return Code: FE_FAIL Remarks/Usage: This method is even faster than PutAllArray, and requires less memory, it does not however give you full control. Entities are simply stored in the next available ID, and the same layer, color... are used for every entity - only the coordinates are input as an array. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. The number of GFXQuad4s to create (i.e. the number of entries in the arrays) Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 12 entries for a entity (3 for the first corner, 3 for the 2nd, ...), followed by the 12 for the next entity, ... . All must be in global rectangular coordinates.
DeleteAll
API-1221
5.20.2.5 DeleteAll
DeleteAll
( bAllSets, nSetID ) Description: Deletes all GFXQuad4s in one or more sets Input: BOOL bAllSets INT4 nSetID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to delete entities If True, all entities, in all sets are deleted. If False, then all entities in Set nSetID are deleted The setID to delete if bAllSets=False
API-1222
5.21 GFXTria3 Objects
GFXTria3 objects correspond to user-creatable graphics triangles in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for nodes. For more information, see Section 5.1, "Common Entity Properties and Methods". Simply creating user-graphics objects will not make them visible in your model. You must also use the methods described in Section 3.17, "User Graphics Methods", to select the data/set to display and the views where you want to display your graphics. Use the feGFXTria3 method of the FEMAP Application object to create GFXTria3 objects.
BOOL autonormal
PutAll
API-1223
PutAll
( entID, xyz, edgeflags, normal, autonormal, layer, fillcolor, edgecolor ) Description: This method stores an entity with the specified ID. Input: INT4 entID REAL8 xyz[0..8] INT4 edgeflags REAL8 normal[0..8] BOOL autonormal INT4 layer INT4 fillcolor INT4 edgecolor Output: None Return Code: FE_FAIL Remarks/Usage: Unlike the standard Put method, this function loads all of the properties as arguments. If you are updating all of the properties before storing an entity, this function will be faster than multiple calls to load each property individually. Example: None Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. The ID of the entity to store.
API-1224
PutAllArray
5.21.2.2 PutAllArray
PutAllArray
( numTr, entID, xyz, edgeflags, normal, autonormal, layer, fillcolor, edgecolor ) Description: This method stores multiple GFXTria3 entities with the specified data. Input: INT4 numTr INT4 entID[0..numTr-1] REAL8 xyz[0..(3*3*numTr)-1] INT4 edgeflags[0..numTr-1] REAL8 normal [0..(3*3*numTr)-1] BOOL autonormal[0..numTr-1] INT4 layer[0..numTr-1] INT4 fillcolor[0..numTr-1] INT4 edgecolor[0..numTr-1] Output: None Return Code: FE_FAIL Remarks/Usage: This is the fastest Put method if you have a large number of items to create, but still need full control over all options. All data can be accumulated in arrays and then transferred in one call. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 9 entries for a entity (3 for the first corner, 3 for the 2nd, ...), followed by the 9 for the next entity, ... . The normal array is stored similarly, but contains the components of the normal vectors. All other arrays contain one entry per triangle. All must be in global rectangular coordinates. The number of GFXTria3s to create (i.e. the number of entries in the arrays) The IDs of the GFXTria3s to store.
PutCoordArray
API-1225
5.21.2.3 PutCoordNormalArray
PutCoordArray
( numTr, xyz, layer, fillcolor, edgecolor ) Description: This is a simpler version of PutAllArray that allows multiple entities to be stored, and still allows you to specify the triangle normal vectors. Input: INT4 numTr REAL8 xyz[0..(3*3*numTr)-1] INT4 edgeflags[0..numTr-1] REAL8 normal [0..(3*3*numTr)-1] BOOL autonormal INT4 layer INT4 fillcolor INT4 edgecolor Output: None Return Code: FE_FAIL Remarks/Usage: This method is even faster than PutAllArray, and requires less memory, it does not however give you full control. Entities are simply stored in the next available ID, and the same layer, color... are used for every entity - only the coordinates, edgeflags and normals are input as arrays. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 9 entries for a entity (3 for the first corner, 3 for the 2nd, ...), followed by the 9 for the next entity, ... . The normal array is stored similarly, but contains the components of the normal vectors. All other arrays contain one entry per triangle. All must be in global rectangular coordinates. The number of GFXTria3s to create (i.e. the number of entries in the arrays)
API-1226
PutCoordArray
5.21.2.4 PutCoordArray
PutCoordArray
( numTr, xyz, layer, fillcolor, edgecolor ) Description: This is a simpler version of PutAllArray that allows multiple entities to be stored. Input: INT4 numTr REAL8 xyz[0..(3*3*numTr)-1] INT4 layer INT4 fillcolor INT4 edgecolor Output: None Return Code: FE_FAIL Remarks/Usage: This method is even faster than PutAllArray, and requires less memory, it does not however give you full control. Entities are simply stored in the next available ID, and the same layer, color... are used for every entity - only the coordinates are input as an array. Example: None Unable to store the entity with the specified ID. Probably unable to allocate memory for all of the arrays. The number of GFXTria3s to create (i.e. the number of entries in the arrays) Refer to the property descriptions for each of these items. xyz is an array of the entity coordinates. In the array, there must be 9 entries for a entity (3 for the first corner, 3 for the 2nd, ...), followed by the 9 for the next entity, ... . All must be in global rectangular coordinates.
DeleteAll
API-1227
5.21.2.5 DeleteAll
DeleteAll
( bAllSets, nSetID ) Description: Deletes all GFXTria3s in one or more sets Input: BOOL bAllSets INT4 nSetID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to delete entities If True, all entities, in all sets are deleted. If False, then all entities in Set nSetID are deleted The setID to delete if bAllSets=False
API-1228
5.22 GlobalPly Objects
Global Ply objects correspond to the global plys in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for GlobalPly objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feGlobalPly method of the FEMAP Application object to create GlobalPly objects.
API-1229
5.23 Group Objects
Group objects correspond to the groups in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Group objects. For more information, see Section 5.1, "Common Entity Properties and Methods". . Use the feGroup method of the FEMAP Application object to create Group objects.
INT4 LayerMin INT4 LayerMax INT4 CoordClipOn INT4 CoordClipMode REAL8 CoordClipMin REAL8 CoordClipMax
INT4 CoordClipCSys
INT4 CoordClipDir INT4 PlaneClipMode BOOL PlaneClipInside INT4 PlaneClipOn[0..5] or VARIANT vPlaneClipOn
API-1230
Property BOOL PlaneClipNeg[0..5] or VARIANT vPlaneClipNeg REAL8 PlaneClipBase[0..5][0..2] or VARIANT vPlaneClipBase REAL8 PlaneClipDir[0..5][0..2] or VARIANT vPlaneClipDir STRING title BOOL Renumber Description Flags indicating whether to use the negative sides of the planes for clipping. The coordinate locations defining a point on each of the clipping planes. The first index indicates the clipping plane. The second index chooses the x, y, or z coordinates. In global rectangular. The components of vectors normal to each of the clipping planes. The first index indicates the clipping plane. The second index chooses the x,y or z components. In global rectangular. The group title (maximum 79 characters). Flag indicating whether this group should be renumbered when other entities are renumbered. Flag indicating that the current group needs to be evaluated before use. This is automatically set to True every time you Put the group to the database. Evaluation computes the list of objects selected into a group by rules, clipping, or any other selection approach. If you set this to True, then when you Put a group, it will be marked so that it will be automatically evaluated every time it is used. With this set to False, the default, the group will be evaluated once, and then never again until it is modified. Set this to True if you want the group to be condensed when you Put it back into the database. Condensing means converting all possible selection methods into equivalent, by ID rules. To see the effect of this operation, you must Put the group.
BOOL NeedEval
BOOL EvalAlways
BOOL Condense
API-1231
5.23.1.1 Group Range Types
All of the the Group methods that access ranges require you to specify which range you want to access. The following table provides the rangeType values that you should use.
Group Range Types 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 CSys_ID CSys_byDefCSys CSys_byType Point_ID Point_byDefCSys Point_onCurve Curve_ID Curve_byPoint Curve_onSurface Surface_ID Surface_byCurve Surface_onVolume Volume_ID Volume_bySurface Text_ID Boundary_ID Boundary_byCurve Node_ID Node_byDefCSys Node_byOutCSys Node_onElem Elem_ID Elem_byMatl Elem_byProp Elem_byType Elem_byNode 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 Prop_ID Prop_onElem Prop_byMatl Prop_byType Load_byNode Load_byElem BCo_ID BEq_byNode Node_atPoint Node_atCurve Node_atSurface Node_atSolid Elem_atPoint Elem_atCurve Elem_atSurface Elem_atSolid Load_byPoint Load_byCurve Load_bySurface BCo_byPoint BCo_byCurve BCo_bySurface Text_byColor Point_byColor Curve_byColor Surface_byColor 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 Elem_byColor Prop_byColor Matl_byColor Text_byLayer Point_byLayer Curve_byLayer Surface_byLayer Volume_byLayer Solid_byLayer CSys_byLayer Node_byLayer Elem_byLayer Prop_byLayer Matl_byLayer Solid_ID Solid_byCurve Solid_bySurface Curve_onSolid Surface_onSolid Point_byProp Curve_byProp Surface_byProp Volume_byProp Solid_byProp Contact_ID Contact_byColor
API-1232
Group Range Types 26 27 28 29 Matl_ID Matl_onProp Matl_onElem Matl_byType 56 57 58 59 Volume_byColor Solid_byColor CSys_byColor Node_byColor 86 87 88 89 Contact_byLayer CSys_onNode CSys_onPoint Elem_byShape
API-1233
5.23.1.2 Group List Types
The Group List method returns a set of selected entities. You must, however, specify which list you want to access. The following table provides the listType values that you should use.
Group Entity List Types 0 1 2 3 4 5 6 7 CSys Point Curve Surface Volume Text Boundary Node 8 9 10 11 12 13 14 15 Elem Material Property Nodal Load Elem Load Constraint Cosntraint Equations Point Loads 16 17 18 19 20 21 22 Curve Loads Surface Loads Point Constraints Curve Constraints Surface Const. Solids Contact Segments
API-1234
List
List
( listType ) Description: This method returns a Set object that contains all of the entities currently in the selected group list. Input: INT4 listType Output: None Return Code: None Remarks/Usage: None Example: The type of group list that you want to retrieve. Refer to Section 5.23.1.2, "Group List Types" for allowable list types.
List
API-1235
List
( listType ) This method must be used with a Set statement to define the Set object. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Const DELIM = " " Dim gr As Group Dim grID As Long grID = 14 Dim s As Set Set gr = App.feGroup gr.Get(grID) Set s = gr.List(FGR_NODE) 'Print out IDs in set Dim msg As String Dim ndID As Long msg = "Nodes in group " + Str$(gr.ID) App.feAppMessage(FCM_NORMAL, msg) msg = "" 'Get first in set ndID = s.First msg = Str$(ndID) + DELIM ' prints out 10 ids per line For i =0 To s.count-1 If ( (i+1) Mod 10 = 0) Or i=s.count-1 Then App.feAppMessage(FCM_NORMAL, msg) 'get next in set ndID = s.Next msg = "" msg = msg + Str$(ndID)+ DELIM Else 'get next in set ndID = s.Next msg = msg + Str$(ndID)+ DELIM End If Next i End Sub This sequence creates the s Set object with the list of nodes (listType=7) that are selected in Group 14.
API-1236
5.23.2.2 Range
Range
Range
( rangeType ) Description: This method returns a Set object that contains all of the entities currently selected by the specified rangeType. Input: INT4 rangeType Output: None Return Code: None Remarks/Usage: None Example: The type of group range list that you want to retrieve. Refer to Section 5.23.1.1, "Group Range Types" for allowable rangeTypes
Range
API-1237
Range
( rangeType ) This method must be used with a Set statement to define the Set object. Sub Main Const DELIM = " " Dim App As femap.model Set App = GetObject(,"femap.model") Dim gr As Group Dim grID As Long grID = 14 Dim s As Set Set gr = App.feGroup gr.Get(grID) Set s = gr.Range(FGD_ELEM_BYMATL) 'Print out IDs in set Dim msg As String Dim ndID As Long msg = "Materials in group " + Str$(gr.ID) App.feAppMessage(FCM_NORMAL, msg) msg = "" 'Get first in set ndID = s.First msg = Str$(ndID) + DELIM ' print out 10 ids per line For i =0 To s.count-1 If ( (i+1) Mod 10 = 0) Or i=s.count-1 Then App.feAppMessage(FCM_NORMAL, msg) ndID = s.Next 'get next in set msg = "" msg = msg + Str$(ndID)+ DELIM Else 'get next in set ndID = s.Next msg = msg + Str$(ndID)+ DELIM End If Next i End Sub This sequence creates the s Set object with the list of materials used to select elements (rangeType=22) that are selected in Group 14.
API-1238
RangeReset
5.23.2.3 RangeReset
RangeReset
( void ) Description: This method resets the next pointer so that the next call to RangeNext will return the first (lowest ID) range. Input: None Output: None Return Code: None Remarks/Usage: This method does not change the next pointer for the Group object, just for the ranges within the group. The next method will still return the next group. Example: None
RangeGetAll
API-1239
5.23.2.4 RangeGetAll
RangeGetAll
( rangeType, rangeCount, startID, stopID, increment, include ) Description: This method returns all of the ranges of a specific type in the form of arrays. Input: INT4 rangeType Output: INT4 rangeCount INT4 startID[0..N] INT4 stopID[0..N] INT4 increment[0..N] INT4 include[0..N] Return Code: FE_NOT_AVAILABLE FE_FAIL Remarks/Usage: Use the Reset method to go to the beginning of the lists of ranges, then keep calling RangeNext to retrieve entries from a list of ranges one-by-one. Alternatively, you can call RangeGetAll to get all of the entries in one call. Example: None The rangeType that you specified is invalid. Unable to retrieve the data for ranges. The number of entries in each of the other arrays. That is, the number of ranges that are returned. The starting ID in the range. The ending ID in the range. This will be 0 for single entry ranges. The increment to count by between startID and stopID The include flag 0=Remove, 1=Add, Exclude=-1. This is the type of range that you are retrieving.
API-1240
RangeNext
5.23.2.5 RangeNext
RangeNext
( rangeType, startID, stopID, increment, include ) Description: This method returns the values from the next range of a specific type. Input: INT4 rangeType Output: INT4 startID INT4 stopID INT4 increment INT4 include Return Code: FE_NOT_AVAILABLE FE_FAIL Remarks/Usage: Use the Reset method to go to the beginning of the lists of ranges, then keep calling RangeNext to retrieve entries from a list of ranges one-by-one. Alternatively, you can call RangeGetAll to get all of the entries in one call. Example: None The rangeType that you specified is invalid. Unable to retrieve the data for ranges, or you are at the end of the list. The starting ID in the range. The ending ID in the range. This will be 0 for single entry ranges. The increment to count by between startID and stopID. The include flag: 0=Remove, 1=Add, Exclude=-1. This is the type of range that you are retrieving.
RangeAdd
API-1241
5.23.2.6 RangeAdd
RangeAdd
( rangeType, startID, stopID, increment, include ) Description: This method adds a range selection to the end of a selected list. Input: INT4 rangeType INT4 startID INT4 stopID INT4 increment INT4 include Output: None Return Code: FE_NOT_AVAILABLE FE_FAIL Remarks/Usage: If the entities that you want to add to the group are in a set, you can use the SetAdd method. Example: None The rangeType that you specified is invalid. Unable to save the data for range. This is the type of range that you are creating. The starting ID in the range. The ending ID in the range. This should be 0 for single entry ranges. The increment to count by between startID and stopID, usually 1. The include flag :0=Remove, 1=Add, Exclude=-1.
API-1242
RangeDelete
5.23.2.7 RangeDelete
RangeDelete
( rangeType ) Description: This method deletes a single range from the selected list. Input: INT4 rangeType Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: This function deletes the range at the current location. To use this function, you must use the RangeNext function to retrieve ranges until you retrieve the one you want to delete, then call RangeDelete and that range will be removed. Example: None The rangeType that you specified is invalid. This is the type of range that you are deleting.
RangeDeleteAll
API-1243
5.23.2.8 RangeDeleteAll
RangeDeleteAll
( rangeType ) Description: This method deletes all ranges from the selected list. Input: INT4 rangeType Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: Deleting all ranges of all types (rangeType=-1) is equivalent to the Group, Operations, Reset Rules command. Example: None The rangeType that you specified is invali. This is the type of range that you are deleting. Specify -1 to delete all ranges of all types.
API-1244
5.23.2.9 SetAdd
SetAdd
SetAdd
( entityType, setID ) Description: This method adds all entities in a set to a group. Input: INT4 entityTYPE INT4 setID Output: None Return Code: FE_FAIL Remarks/Usage: This method creates one or more entity ID range type rules to select the entities into the group. Example: None Invalid entityTYPE to add to a group Type of entity in the selected set. For more information, see Section 3.3.6, "Entity Types". The ID of the set containing the entities to add to the group
SetAddOpt
API-1245
5.23.2.10 SetAddOpt
SetAddOpt
( entityType, setID, addOpt ) Description: This method adds (or removes) all entities in a set to a group. Input: INT4 entityTYPE INT4 setID INT4 addOpt Output: None Return Code: FE_FAIL Remarks/Usage: This method works just like the RangeAdd method except that all entities in the set are either added or removed. Example: None Invalid entityTYPE to add to a group Type of entity in the selected set. For more information, see Section 3.3.6, "Entity Types". The ID of the set containing the entities to add to the group 0=Remove, 1=Add, -1= Exclude
API-1246
5.23.2.11 Add
Add
Add
( entityType, entityID ) Description: This method adds a single entity to a group. Input: INT4 entityTYPE INT4 entityID Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Invalid entityTYPE to add to a group Type of entity in the selected set. For more information, see Section 3.3.6, "Entity Types". The ID of the entity to add to the group.
SelectModel
API-1247
5.23.2.12 SelectModel
SelectModel
( void ) Description: This method creates rules that select all possible entities in a model. Input: None Output: None Return Code: None Remarks/Usage: This method is like the Group, Operations, Select Model command. The group must be Put to the database before these selections will take effect. Example: None
API-1248
SelectMesh
5.23.2.13 SelectMesh
SelectMesh
( elemSET ) Description: This method creates a group that contains all of the nodes, properties, materials, coordinate systems, loads, and constraints that are referenced by the selected elements. Input: INT4 elemSET Output: None Return Code: None Remarks/Usage: This is like the Group, Operations, Select Mesh command. The group must be Put to the database before these selections will take effect. Example: None The set of elements to use to compute the desired subset of the model.
SelectContact
API-1249
5.23.2.14 SelectContact
SelectContact
( contactSET ) Description: This method creates a group that contains all of the entities referenced by a selected set of contact segments/surfaces. Input: INT4 contactSET Output: None Return Code: None Remarks/Usage: This is like the Group, Operations, Contact Segment/Surface command. The group must be Put to the database before these selections will take effect. Example: None The set of contact segments/surfaces used to generate the group.
API-1250
SelectAllOnLayer
5.23.2.15 SelectAllOnLayer
SelectAllOnLayer
( startLayer, endLayer ) Description: This method selects all of the entities in the current model that are on layers startLayer thru endLayer. Input: INT4 startLayer INT4 endLayer Output: None Return Code: None Remarks/Usage: This is like the Group, Operations, Generate Entities On Layer command, except the entities are selected into the current Group object. Example: None The ID of the lowest layer to select. The ID of the highest layer to select (If 0, then just entities on startLayer are selected)
ReferencedGroups
API-1251
5.23.2.16 ReferencedGroups
ReferencedGroups
( void ) Description: This method creates and returns a Set object that contains the IDs of all sub-groups that are referenced by this group. Input: None Output: None Return Code: None Remarks/Usage: The Set object is returned in place of the return code. Example: None
API-1252
5.24 Layer Objects
Layer objects correspond to the layer definitions in your model. They are derived from Entity objects, so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Layer objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feLayer method of the FEMAP Application object to create Layer Objects.
API-1253
API-1254
5.25 Layup Objects
Layup objects correspond to the layups in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Layup objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feLayup method of the FEMAP Application object, or the Layup method of the Property object to create Layup objects.
API-1255
Property REAL8 AInvMatrix[0..2,0..2] or VARIANT vAInvMatrix REAL8 BInvMatrix[0..2,0..2] or VARIANT vBInvMatrix REAL8 DInvMatrix[0..2,0..2] or VARIANT vDInvMatrix REAL8 InPlaneProp[0..7] or VARIANT vInPlaneProp REAL8 BendingProp[0..7] or VARIANT vBendingProp Description Computed Value - [A]-1 Matrix
Computed Value - [D]-1 Matrix In-Plane Properties (Ex, Ey, Gxy, NUxy, NUyx, Alphax, Alphay, Alphaxy) Bending Properties (Exb, Eyb, Gxyb, NUxyb, NUyxb, Alphaxb, Alphayb, Alphaxyb)
API-1256
AddPly
AddPly
( nMatlID, dThickness, dAngle, nGlobalPly ) Description: This method adds a ply to the layup. Input: INT4 nMatlID REAL8 dThickness REAL8 dAngle INT4 nGlobalPly Output: None Return Code: None Remarks/Usage: This function simply adds a ply to the top of the layup. Same as calling InsertPly with nPlyID = NumberOfPlys+1 Example: The ID of a material referenced by the ply The thickness of the ply The orientation angle of the ply The ID of a Global Ply referenced by this ply, if any.
InsertPly
API-1257
5.25.2.2 InsertPly
InsertPly
( nPlyID, nMatlID, dThickness, dAngle, nGlobalPly ) Description: This method inserts a ply into the layup. Input: INT4 nPlyID INT4 nMatlID REAL8 dThickness REAL8 dAngle INT4 nGlobalPly Output: None Return Code: None Remarks/Usage: The index of the ply to insert. Ply 1 is at the bottom. The IDs of all plys at and above this number are increased by one. The ID of a material referenced by the ply The thickness of the ply The orientation angle of the ply The ID of a Global Ply referenced by this ply, if any.
Example:
API-1258
5.25.2.3 SetPly
SetPly
SetPly
( nPlyID, nMatlID, dThickness, dAngle, nGlobalPly ) Description: This method replaces the data for a ply in the layup. Input: INT4 nPlyID INT4 nMatlID REAL8 dThickness REAL8 dAngle INT4 nGlobalPly Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: nPlyID does not specify a ply that currently exists in the layup. Use AddPly or InsertPly to create a new ply. The index of the ply to replace/set. Ply 1 is at the bottom. The ID of a material referenced by the ply The thickness of the ply The orientation angle of the ply The ID of a Global Ply referenced by this ply, if any.
Example:
SetAllPly
API-1259
5.25.2.4 SetAllPly
SetAllPly
( nNumPly, nMatlID, dThickness, dAngle, nGlobalPly ) Description: This method replaces the data for all plys in the layup. Input: INT4 nNumPly INT4 nMatlID[0..nNumPly-1] REAL8 dThickness[0..nNumPly-1] REAL8 dAngle[0..nNumPly-1] INT4 nGlobalPly[0..nNumPly1] Output: None Return Code: FE_FAIL Remarks/Usage: Unlike SetPly, this method simply clears all previous ply definitions and replaces the entire layup with the definition supplied in the arrays. The first entry in the arrays becomes the bottom of the layup. Example: Unable to set the ply data. The number of plys being specified. The IDs of materials referenced by the plys The thicknesses of the plys The orientation angles of the plys The IDs of Global Plys referenced by the plys, if any.
API-1260
5.25.2.5 GetPly
GetPly
GetPly
( nPlyID, nMatlID, dThickness, dAngle, nGlobalPly ) Description: Returns all of the data for a selected ply. Input: INT4 nPlyID Output: INT4 nMatlID REAL8 dThickness REAL8 dAngle INT4 nGlobalPly Return Code: FE_NOT_AVAILABLE Remarks/Usage: The ply ID that you specified did not exist. It must be between 1 and the number of plys in the layup. The ID of a material referenced by the ply The thickness of the ply The orientation angle of the ply The ID of a Global Ply referenced by this ply, if any. The index of the ply to retrieve. Ply 1 is at the bottom.
Example:
GetAllPly
API-1261
5.25.2.6 GetAllPly
GetAllPly
( nPlyID, nMatlID, dThickness, dAngle, nGlobalPly ) Description: Returns all of the data for all plys. Input: None Output: INT4 nNumPly INT4 nMatlID[0..nNumPly-1] REAL8 dThickness[0..nNumPly-1] REAL8 dAngle[0..nNumPly-1] INT4 nGlobalPly[0..nNumPly1] Return Code: FE_FAIL Remarks/Usage: Unable to retrieve ply data. The number of plys, and the number of entries in each of the arrays The IDs of materials referenced by each ply The thicknesses of each ply The orientation angles of each ply The IDs of Global Plys referenced by each ply, if any.
Example:
API-1262
5.25.2.7 DeletePly
DeletePly
DeletePly
( nPlyID ) Description: This method removes a ply from the layup. Input: INT4 nPlyID Output: None Return Code: FE_NOT_AVAILABLE Remarks/Usage: The ply ID that you specified did not exist. It must be between 1 and the number of plys in the layup. The index of the ply to delete. Ply 1 is at the bottom. The IDs of all plys at and above this number are decreased by one.
Example:
Clear
API-1263
5.25.2.8 Clear
Clear
( void ) Description: This method removes all plys from the layup. Input: None Output: None Return Code: None Remarks/Usage:
Example:
API-1264
5.25.2.9 Compute
Compute
Compute
( dynamic ) Description: This method computes overall layup properties. Input: BOOL dynamic Output: None Return Code: None Remarks/Usage: See Compute2( ) for more options Example: If True, the results will be immediately sent to the Entity Info window (if it is open). If False, the results will be sent to the message window.
Compute2
API-1265
5.25.2.10 Compute2
Compute2
( nOption ) Description: This method computes overall layup properties. Input: INT4 nOption Output: None Return Code: None Remarks/Usage: None Example: 0=No Echo, just compute. 1=Compute and Echo to Entity Info. 2=Compute and Echo to Message Window.
API-1266
HasGlobalPly
5.25.2.11 HasGlobalPly
HasGlobalPly
( nGlobalPlyID, nPlyNum ) Description: This method indicates whether or not a selected global ply is used in a layup. Input: INT4 nGlobalPlyID Output: INT4 nPlyNum Return Code: FE_NOT_AVAILABLE FE_FAIL Remarks/Usage: The layup has no plys to search The selected global ply was not used. The index (1 is the bottom ply) of the ply that references nGlobalPlyID - if any. The ID of the Global Ply that you want to search for.
Example:
HasMaterial
API-1267
5.25.2.12 HasMaterial
HasMaterial
( nMatlID ) Description: This method indicates whether or not a selected material is used in a layup. Input: INT4 nMatlID Output: None Return Code: FE_NOT_AVAILABLE FE_FAIL Remarks/Usage: The layup has no plys to search The selected material was not used. The ID of the Material that you want to search for.
Example:
API-1268
HasFullGlobalPly
5.25.2.13 HasFullGlobalPly
HasFullGlobalPly
( ) Description: This method indicates whether or not every ply in a layup references a global ply Input: None Output: None Return Code: FE_OK FE_FAIL Remarks/Usage: Every ply references a global ply At least one ply does not reference a global ply
Example:
HasFullGlobalPly
API-1269
API-1270
5.26 LoadBolt Object
LoadBolt objects correspond to bolt preloads in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for LoadBolt objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feLoadBolt method of the FEMAP Application object to create LoadBolt objects.
AddArray
API-1271
5.26.2.1 AddArray
AddArray
( count, RegionID, Values ) Description: This method creates multiple Bolt Preloads Input: INT4 count INT4 RegionID[0..count-1] REAL8 Values[0..count-1] Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage: Prior to using this method, you must properly specify the other parameters in the object - such as, color and setID, and any other types required for your loads. This method simply uses the data you specify here to overwrite specific values in the LoadBolt object, and create a new preload for each entry in the arrays. Example: None The Loads could not be created. Unable to allocate memory to store arrays of data. The number of bolt preloads to create, and the number of IDs in RegionID The Bolt Region IDs where preloads will be created. One preload is created on each ID. Bolt Preload Values. Refer to preload property.
API-1272
Property
INT4 DataType
PutAll
API-1273
PutAll
( entID, enDataType, enLoadType, sTitle ) Description: This method stores a Load Definition with the specified ID along with all the available options. Input: INT4 entID INT4 DataType INT4 LoadType STRING Title Output: None Return Code: FE_FAIL Remarks/Usage: Unlike the standard Put method, this function loads all of the properties as arguments. If you are updating all of the properties before storing an entity, this function will be faster than multiple calls to load each property individually. Example: None Unable to store the entity with the specified ID Refer to the property descriptions for each of these items. The ID of the Load Definition to store.
API-1274
ResetNextLoad
5.27.2.2 ResetNextLoad
ResetNextLoad
( void ) Description: This method initializes all options prior to calling the NextLoad method below Input: None Output: None Return Code: FE_OK Remarks/Usage: This method is used prior to calling NextLoad to specify which loads will be retrieved. It simply resets this object so that the next call to NextLoad will return the first load available in the object. Example:
NextLoad
API-1275
5.27.2.3 NextLoad
NextLoad
( pLoad ) Description: This method returns the next available load that is contained in the Load Definition Input: OBJECT pLoad Output: None Return Code: FE_FAIL Remarks/Usage: This method, coupled with ResetNextLoad provides an easy way to retrieve all loads from a Load Definition. Example: There are no more loads of the specified type to retrieve. Call ResetNextLoad to go back to the first load, if you want to retrieve the loads again. The next load object. Depending on the type of the load definition this could be a LoadGeom, LoadMesh, LoadNTemp or LoadGeom object
API-1276
CountLoads
5.27.2.4 CountLoads
CountLoads
( ) Description: This method returns the next available load that is contained in the Load Definition Input: None Output: None Return Code: INT4 numLoads Remarks/Usage: This method relies on the current Load Definition ID to count the referenced loads Example: The number of loads referenced by this load definition.
IsTotalLoad
API-1277
5.27.2.5 IsTotalLoad
IsTotalLoad
( ) Description: This method indicates whether the current load definition represents a total load applied to geometry. Input: None Output: None Return Code: FE_OK FE_FAIL FE_INVALID Remarks/Usage: None Example: Load Definition represents a total load Not a total load Load is not a applied to geometry.
API-1278
5.28 LoadETemp Objects
LoadETemp objects correspond to the elemental temperatures in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for LoadETemps objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feLoadETemp method of the FEMAP Application object to create LoadETemp objects.
AddArray
API-1279
5.28.2.1 AddArray
AddArray
( count, doValues, doFunctions, ElemID, Values, FunctionID ) Description: This method creates multiple elemental temperatures Input: INT4 count The number of temperatures to create, and the number of IDs in ElemID If True, then the Values array must contain load values to be used. If False, then whatever is specified in the current object is used and Values is ignored If True, then the FunctionID array must contain Function IDs to be used. If False, then whatever is specified in the current object is used and FunctionID is ignored. The Element IDs where temperatures will be created. One temperature is created on each ID. Temperature Values. Refer to temp property. IDs of functions associated with each temperature. Specify 0 for constant values. Refer to function property.
BOOL doValues
BOOL doFunctions
INT4 ElemID[0..count-1] REAL8 Values[0..count-1] INT4 FunctionID[0..count-1] Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage:
The Loads could not be created. Unable to allocate memory to store arrays of data.
Prior to using this method, you must properly specify the other parameters in the object - such as, color and setID, and any other types required for your loads. This method simply uses the data you specify here to overwrite specific values in the LoadETemp object, and create a new temperature for each entry in the arrays. Example: None
API-1280
5.29 LoadGeom Objects
LoadGeom objects correspond to the geometry-based loads in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for LoadGeom objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feLoadGeom method of the FEMAP Application object to create LoadGeom objects.
Property INT4 geomID INT4 addlID[0..1] or VARIANT vaddlID INT4 csys INT4 function[0..4] or VARIANT vfunction
Description ID of the point, curve or surface that is loaded. Additional IDs. These are not used for most loads. They contain the additional nodes for nonlinear force loads. The ID of the coordinate system used to define the load. Regardless of this value, all loads that are vector-based are stored in global rectangular coordinates. The IDs of functions associated with the various load values: [0]=Load func, Emissivity func [1]=Absorbtivity vs. Temp [2]=Temp vs Temp [3]=View Factor vs Time [4]=Phase vs. Freq Array containing the face number (0) for face-based loads, or flags indicating which components are enabled for vector loads.
API-1281
Property INT4 type INT4 subtype Description The type of load being defined. For values, see Section 5.29.3, "LoadGeom Load Types". An additional flag specifying more information about the type of load. Used for nonlinear transient force loads. The type of geometric entity that this load is applied to. For more information on Entity Types refer to the table in Section 3.3.6, "Entity Types". Can be FT_SURFACE, FT_CURVE, or FT_POINT. This property is Read-Only. The layer associated with the load. The load values. The location of specific values varies for each type of load, but generally follows the order of the values in the load creation dialog box. For loads with a single value, it is located in load[0]. X,Y,Z components are located in load[0],load[1],load[2]. The components of the direction for certain elemental loads. For vector fluxes, the initial direction. This does not contain the direction for nodal vector loads like force or displacement. Those values are in the "load" values.
INT4 geomtype INT4 layer REAL8 load[0..4] or VARIANT vload REAL8 fluxdir[0..2] or VARIANT vfluxdir INT4 DataSurface[0..2] or VARIANT vDataSurface INT4 color BOOL expanded INT4 LoadDefinitionID
The load color. True if this is an expanded geometric load. The ID of the load definition that contains this load (0=None)
Geometry Load Specific Properties INT4 dirmode REAL8 dirbase[0..2] or VARIANT vdirbase REAL8 direction[0..2] or VARIANT vdirection INT4 dirID INT4 variation STRING varname STRING vareqn The direction setting for the load: 0=None, 1=Vector, 2=AlongCurve, 3= Normal to Plane, 4=Normal to Surface. The location of the base of the direction vector, if dirmode=1 or 3.
The components of the direction vector, if dirmode = 1 or 3. The curve or surface ID if dirmode = 2 or 4. The load variation mode: 0=None/Constant, 1=Equation, 2=Function, 3=Interpolation. The variable name used for load variation. The equation defining the load variation if variation=1.
API-1282
Property INT4 varfunction REAL8 varlocate [0..3][0..2] or VARIANT vvarlocate REAL8 varvalue[0..3] or VARIANT vvarvalue BOOL midside Additional Properties INT4 FaceNumber BOOL XOn BOOL YOn BOOL ZOn REAL8 X REAL8 Y REAL8 Z REAL8 Temp REAL8 Phase INT4 LoadFunction INT4 TempVsTime INT4 PhaseVsFreq REAL8 LoadValue BOOL CornerPressure REAL8 Pressure REAL8 HeatGen The element face number for face-based loads, like pressure. True if the X component of a nodal load, like force or displacement is active. This refers to the X component in the definition CSys. True if the Y component of a nodal load, like force or displacement is active. This refers to the Y component in the definition CSys. True if the Z component of a nodal load, like force or displacement is active. This refers to the Z component in the definition CSys. The X component of a nodal load, like force or displacement. In global rectangular coordinates. The Y component of a nodal load, like force or displacement. In global rectangular coordinates. The Z component of a nodal load, like force or displacement. In global rectangular coordinates. The temperature associated with the load. The phase associated with the load. The ID of the function associated with the primary load value. The ID of the function specifying the time dependence of temperature. The ID of the function specifying the frequency dependence of phase. The primary load value. Flag specifying whether a pressure load has corner values, or a single constant value. The pressure value for a pressure load. The heat generation value for a heat generation load. Description The ID of the function used for load variation if variation=2. The coordinates of the locations used for interpolation if variation=3. The x, y and z coordinates of a single point are stored in varlocate(i,0), varlocate(i,1) and varlocate(i,2) respectively.
The values corresponding to each of the varlocate locations. If True, then loads at midside nodes are adjusted during load expansion to provide uniform loading. If False, midside nodes are treated just like other nodes during expansion.
API-1283
Property REAL8 HeatFlux REAL8 Absorptivity INT4 AbsorptivityVsTemp BOOL VectorFlux REAL8 FluidValue BOOL PeriodicMaster BOOL PeriodicDirection REAL8 ConvectionCoeff BOOL ForcedConvection BOOL FCDisableAdvection BOOL FCDisableConvection REAL8 FlowRate REAL8 FlowDiameter REAL8 FlowAreaFactor REAL8 Emissivity INT4 EmissivityFunc REAL8 ViewFactor INT4 ViewFactorVsTime BOOL EnclosureRadiation BOOL CanShade BOOL CanBeShaded INT4 CavityNumber Description The heat flux value for a heat flux load. The absorptivity for a radiation load. The ID of a function specifying temperature dependence of absorptivity. Flag specifying that an elemental flux load is a vector flux. Primary load value for a fluid load. Flag specifying a periodic condition load as Master. Flag specifying the periodic condition direction. The convection coefficient for a convection load. Flag specifying that a convection load defines forced convection. Flag specifying that a forced convection load is disabling advection. Flag specifying that a forced convection load is disabling convection. The flow rate for forced convection. The flow diameter for forced convection. The flow area factor for forced convection. The emissivity for a radiation load. The ID of function specifying the variation of emissivity. The radiation view factor. ID of the function specifying the time dependence of the view factor. Flag specifying a radiation load as enclosure radiation. Flag specifying a radiation load as shading other regions. Flag specifying a radiation load as being shaded by other regions. The cavity number for enclosure radiation.
API-1284
GetSearch
GetSearch
( loadType, geomID ) Description: This method searches for and retrieves an entity that is loading a specified geometric entity. Input: INT4 loadType INT4 geomID Output: None Return Code: FE_FAIL Remarks/Usage: Since LoadGeom objects are not stored by a specified ID, but rather in sequential order, the normal Get method may not be useful if you are trying to find the loads on a specific curve or surface. The only way to do that would be to Get every load and check for the references that you want. This method does that for you. You specify the load type and point/curve/surface you want to search for, and it returns the loads on that entity. Be aware that this method does still search the entire set. If you are going to retrieve loads on a large number of geometry entities, it could be faster to retrieve them all using Get, and discard the ones you do not want. Example: None The specified entity does not exist or is not loaded. Type of load being applied. For values, see Section 5.29.3, "LoadGeom Load Types". ID of geometry loaded. The loadType determines whether this should be a point, curve or surface ID.
GetSearch
API-1285
Geometry Load Types (p = Point ; c = Curve ; s = Surface, n=on Node, e=on Element) 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 121 122 123 124 125 126 pnForce pnMoment pnDisp pnRotDisp pnVelocity pnRotVelocity pnAccel pnRotAccel pnTemp pnHeatFlux pnHeatGen pnPressure pnTotalPressure pnScalar pnSteamQuality pnHumidity pnFluidHeight pnUnknownCondition pnSlipCondition pnFanCurve pnPeriodic cnForce cnForcePerLength cnForceAtNode cnMoment cnMomentPerLength cnMomentAtNode 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 161 162 cnVelocity cnRotVelocity cnAccel cnRotAccel cnTemp cnHeatFlux cnHeatFluxPerLength cnHeatFluxAtNode cnHeatGen cePressure ceTemp ceHeatFlux ceConvection ceRadiation ceHeatGen cnPressure cnTotalPressure cnScalar cnSteamQuality cnHumidity cnFluidHeight cnUnknownCondition cnSlipCondition cnFanCurve cnPeriodic snForce snForcePerArea 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 snMomentPerArea snMomentAtNode snDisp snRotDisp snVelocity snRotVelocity snAccel snRotAccel snTemp snHeatFlux snHeatFluxPerArea snHeatFluxAtNode snHeatGen sePressure seTemp seHeatFlux seConvection seRadiation seHeatGen snPressure snTotalPressure snScalar snSteamQuality snHumidity snFluidHeight snUnknownCondition snSlipCondition
API-1286
GetSearch
Geometry Load Types (p = Point ; c = Curve ; s = Surface, n=on Node, e=on Element) 127 128 cnDisp cnRotDisp 163 164 snForceAtNode snMoment 192 193 snFanCurve snPeriodic
API-1287
5.30 LoadMesh Objects
LoadMesh objects correspond to the nodal and elemental loads (other than temperatures) in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for LoadMesh objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feLoadMesh method of the FEMAP Application object to create LoadMesh objects.
Property INT4 meshID INT4 addlID[0..1] or VARIANT vaddlID INT4 csys INT4 function[0..4] or VARIANT vfunction
Description ID of the node or element that is loaded. Additional IDs. These are not used for most loads. They contain the additional nodes for nonlinear force loads. The ID of the coordinate system used to define the load. Regardless of this value, all loads that are vector-based are stored in global rectangular coordinates. The IDs of functions associated with the various load values: [0]=Load func, Emissivity func [1]=Absorbtivity vs. Temp [2]=Temp vs Temp [3]=View Factor vs Time [4]=Phase vs. Freq Array containing the face number (0) for face based loads, or flags indicating which components are enabled for vector loads.
INT4 dof[0..2] or VARIANT vdof BOOL flag[0..2] or VARIANT vflag INT4 type
Flags specifying various load options. The type of load being defined. Refer to the load type table for values.
API-1288
Property INT4 subtype INT4 layer REAL8 load[0..4] or VARIANT vload REAL8 fluxdir[0..2] or VARIANT vfluxdir INT4 color BOOL expanded INT4 LoadDefinitionID Additional Properties INT4 FaceNumber BOOL XOn BOOL YOn BOOL ZOn REAL8 X REAL8 Y REAL8 Z REAL8 Temp REAL8 Phase INT4 LoadFunction INT4 TempVsTime INT4 PhaseVsFreq REAL8 LoadValue The element face number for face-based loads, like pressure. True if the X component of a nodal load, like force or displacement, is active. This refers to the X component in the definition CSys. True if the Y component of a nodal load, like force or displacement, is active. This refers to the Y component in the definition CSys. True if the Z component of a nodal load, like force or displacement, is active. This refers to the Z component in the definition CSys. The X component of a nodal load, like force or displacement. In global rectangular coordinates. The Y component of a nodal load, like force or displacement. In global rectangular coordinates. The Z component of a nodal load, like force or displacement. In global rectangular coordinates. The temperature associated with the load. The phase associated with the load. The ID of the function associated with the primary load value. The ID of the function specifying the time dependence of temperature. The ID of the function specifying the frequency dependence of phase. The primary load value. Description An additional flag specifying more information about the type of load. Used for nonlinear transient force loads. The layer associated with the load. The load values. The location of specific values varies for each type of load, but generally follows the order of the values in the load creation dialog box. For loads with a single value, it is located in load[0]. X,Y,Z components are located in load[0],load[1],load[2]. The components of the direction for certain elemental loads. For vector fluxes, the initial direction. This does not contain the direction for nodal vector loads like force or displacement. Those values are in the "load" values. The load color. True if this is an expanded geometric load. The ID of the load definition that contains this load (0=None)
API-1289
Property BOOL CornerPressure REAL8 Pressure REAL8 HeatGen REAL8 HeatFlux REAL8 Absorptivity INT4 AbsorptivityVsTemp BOOL VectorFlux REAL8 FluidValue BOOL PeriodicMaster BOOL PeriodicDirection REAL8 ConvectionCoeff BOOL ForcedConvection BOOL FCDisableAdvection BOOL FCDisableConvection REAL8 FlowRate REAL8 FlowDiameter REAL8 FlowAreaFactor REAL8 Emissivity INT4 EmissivityFunc REAL8 ViewFactor INT4 ViewFactorVsTime BOOL EnclosureRadiation BOOL CanShade Description Flag specifying whether a pressure load has corner values, or a single constant value. The pressure value for a pressure load. The heat generation value for a heat generation load. The heat flux value for a heat flux load. The absorptivity for a radiation load. The ID of a function specifying temperature dependence of absorptivity. Flag specifying that an elemental flux load is a vector flux. Primary load value for a fluid load. Flag specifying a periodic condition load as Master. Flag specifying the periodic condition direction. The convection coefficient for a convection load. Flag specifying that a convection load defines forced convection. Flag specifying that a forced convection load is disabling advection Flag specifying that a forced convection load is disabling convection The flow rate for forced convection. The flow diameter for forced convection. The flow area factor for forced convection. The emissivity for a radiation load. The ID of function specifying the variation of emissivity. The radiation view factor. ID of the function specifying the time dependence of the view factor. Flag specifying a radiation load as enclosure radiation. Flag specifying a radiation load as shading other regions.
API-1290
Property BOOL CanBeShaded INT4 CavityNumber Description Flag specifying a radiation load as being shaded by other regions. The cavity number for enclosure radiation.
GetSearch
API-1291
GetSearch
( loadType, meshID, faceID ) Description: This method searches for and retrieves an entity that is loading a specified node or element entity. Input: INT4 loadType INT4 meshID Type of load being applied. For values, see Section 5.30.3, "LoadMesh Load Types". ID of node or element being loaded. The loadType determines whether this should be a node ID or an element ID. For certain face-based elemental loads (pressure, flux, etc.) you must also specify the element face that is being loaded. For all other load types, this option is ignored.
Since LoadMesh objects are not stored by a specified ID, but rather in sequential order, the normal Get method may not be useful if you are trying to find the loads on a specific node or element. The only way to do that would be to Get every load and check for the references that you want. This method does that for you. You specify the load type and node/element you want to search for, and it returns the loads on that entity. Be aware that this method does still search the entire set. If you are going to retrieve loads on a large number of mesh entities, it could be faster to retrieve them all using Get, and discard the ones you do not want. Example: None
API-1292
5.30.2.2 Add
Add
Add
( setID, loadType, nCSys, DOF, Values, FunctionID ) Description: This method creates multiple nodal or elemental loads Input: INT4 setID INT4 loadType INT4 nCSys The ID of a Set object that contains the nodes or elements where loads will be applied. Alternatively, if you specify a negative value, this is simply the ID of the single node or element to load. The type of load being defined. Refer to type property. The ID of the Coordinate System where load values are being defined. Degree of Freedom flags for forces (True=On, False=Off). For Pressures and other face-based loads the first DOF for each element is the faceID (1-6) for the load. Refer to dof property. Load Values, 5 per load. Refer to load property. IDs of functions associated with each load value. Specify 0 for constant values. 5 per load. Refer to function property.
INT4 DOF[0..2] REAL8 Values[0..4] INT4 FunctionID[0..4] Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage:
The Loads could not be created. Unable to allocate memory to store arrays of data.
Prior to using this method, you must properly specify the other parameters in the object - such as, color, setID, and any other types required for your loads. This method simply uses the data you specify here to overwrite specific values in the loadmesh object, and create a new load for each entry in the set. Example: None
AddArray
API-1293
5.30.2.3 AddArray
AddArray
( count, doDOF, doValues, doFunctions, NodeElemID, DOF, Values, FunctionID ) Description: This method creates multiple nodal or elemental loads Input: INT4 count The number of loads to create, and the number of IDs in NodeElemID If True, then the DOF array must contain the DOF flags/Face IDs to be used. If False, then whatever is specified in the current object is used, and DOF is ignored. If True, then the Values array must contain load values to be used. If False, then whatever is specified in the current object is used and Values is ignored If True, then the FunctionID array must contain Function IDs to be used. If False, then whatever is specified in the current object is used and FunctionID is ignored. The Node or Element IDs where loads will be created. One load is created on each ID. Degree of Freedom flags for forces (True=On, False=Off). For Pressures and other face-based loads the first DOF for each element is the faceID (1-6) for the load. There are three entries per load. Refer to dof property. Load Values, 5 per load. Refer to load property. IDs of functions associated with each load value. Specify 0 for constant values. 5 per load. Refer to function property.
BOOL doDOF
BOOL doValues
BOOL doFunctions
INT4 NodeElemID[0..count-1]
INT4 DOF[0..(3*count)-1]
REAL8 Values[0..(4*count)-1] INT4 FunctionID[0..(4*count)1] Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage:
The Loads could not be created. Unable to allocate memory to store arrays of data.
Prior to using this method, you must properly specify the other parameters in the object - such as, load type, color, setID, and any other types required for your loads. This method simply uses the data you specify here to overwrite specific values in the loadmesh object, and create a new load for each entry in the arrays.
API-1294
AddArray
AddArray
( count, doDOF, doValues, doFunctions, NodeElemID, DOF, Values, FunctionID ) Example: None
AddArray
API-1295
Mesh Load Types (n = Nodal; e = Elemental) 1 2 3 4 5 6 7 8 10 nForce nMoment nDisplacement nRotDisplacement nVelocity nRotVelocity nAcceleration nRotAcceleration nHeatFlux 11 12 13 14 15 16 17 18 19 nHeatGen Transient nPressure nTotalPressure nScalar nSteamQuality nHumidity nFluidHeight nUnknownCondition 20 21 22 41 42 44 45 46 47 nSlipCondition nFanCurve nPeriodic eLineLoad ePressure eHeatFlux eConvection eRadiation eHeatGen
API-1296
5.31 LoadNTemp Objects
LoadNTemp objects correspond to the nodal temperatures in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for LoadNTemps objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feLoadNTemp method of the FEMAP Application object to create LoadNTemp objects.
AddArray
API-1297
5.31.2.1 AddArray
AddArray
( count, doValues, doFunctions, NodeID, Values, FunctionID ) Description: This method creates multiple nodal temperatures Input: INT4 count The number of temperatures to create, and the number of IDs in NodeID If True, then the Values array must contain load values to be used. If False, then whatever is specified in the current object is used and Values is ignored If True, then the FunctionID array must contain Function IDs to be used. If False, then whatever is specified in the current object is used and FunctionID is ignored. The Node IDs where temperatures will be created. One temperature is created on each ID. Temperature Values. Refer to temp property. IDs of functions associated with each temperature. Specify 0 for constant values. Refer to function property.
BOOL doValues
BOOL doFunctions
INT4 NodeID[0..count-1] REAL8 Values[0..count-1] INT4 FunctionID[0..count-1] Output: None Return Code: FE_FAIL FE_NO_MEMORY Remarks/Usage:
The Loads could not be created. Unable to allocate memory to store arrays of data.
Prior to using this method, you must properly specify the other parameters in the object - such as, color and setID, and any other types required for your loads. This method simply uses the data you specify here to overwrite specific values in the LoadNTemp object, and create a new temperature for each entry in the arrays. Example: None
API-1298
Property
Body Load - The center of rotation. The ID of the coordinate system used to define the various body loads
Property
API-1299
Property BOOL BodyDefTempOn REAL8 BodyDefTemp BOOL BodyRefTempOn REAL8 BodyRefTemp REAL8 StefanBoltzmann INT4 RadiationAmbientElem REAL8 TempOffset REAL8 FreeConvExponent BOOL FreeConvAlternateForm REAL8 FCFluidConductivity REAL8 FCFluidHeatCapacity REAL8 FCFluidViscosity REAL8 FCFluidDensity INT4 FCFluidConductivityFunc INT4 FCFluidHeatCapacityFunc INT4 FCFluidViscosityFunc INT4 FCFluidDensityFunc REAL8 FCConstantCoeff REAL8 FCReynoldsExp REAL8 FCPrandtlIn REAL8 FCPrandtlOut BOOL FCAlternateForm BOOL FCExcludeConvective
Description Body Load - Default Temperature is active if True. Body Load - The default temperature. Body Load - Reference Temperature is active if True. Body Load - The reference temperature Heat Transfer - Stefan-Boltzmann Constant Heat Transfer - ID of element used for ambient temp in enclosure radiation. Heat Transfer - Offset of Temperatures from Absolute Zero Heat Transfer - Free Convection Exponent. Heat Transfer - Flag for Alternate Free Convection Formulation Heat Transfer - Forced Convection Fluid Conductivity Heat Transfer - Forced Convection Fluid Heat Capacity Heat Transfer - Forced Convection Fluid Viscosity Heat Transfer - Forced Convection Fluid Density Heat Transfer - Forced Convection Fluid Conductivity Function Heat Transfer - Forced Convection Fluid Heat Capacity Function Heat Transfer - Forced Convection Fluid Viscosity Function Heat Transfer - Forced Convection Fluid Density Function Heat Transfer - Forced Convection Equation Constant Coefficient Heat Transfer - Forced Convection Reynolds Exponent Heat Transfer - Forced Convection Prandtl Exponent into Fluid Heat Transfer - Forced Convection Prandtl Exponent out of Fluid Heat Transfer - Flag for Alternate Forced Convection Formulation Heat Transfer - Flag to Exclude Forced Convection Convective Energy Flow
API-1300
Property
Property INT4 NLOn INT4NLIncrements REAL8NLTimeIncrement INT4 NLMaxIterPerStep BOOL NLConvergenceFlag[0..2] or VARIANT vNLConvergenceFlag REAL8 NLConvergenceVal[0..2] or VARIANT vNLConvergenceVal INT4 NLStiffnessMethod INT4 NLStiffnessIter INT4 NLIntermediateOutput INT4 NLOutputInterval INT4 NLArcLengthMethod
Description Flag for Nonlinear Analysis: 0=Off, 1=Static, 2=Creep, 3=Transient Nonlinear - Number of Increments for Nonlinear Analysis Nonlinear - Time Increment Nonlinear - Max Iterations per Step Nonlinear - Convergence Flags for 0=Displacement, 1=Load and 2=Work Nonlinear - Convergence Tolerances for Displacement, Load and Work Nonlinear - Stiffness Update Method Nonlinear - Iterations before Stiffness Update Nonlinear - Intermediate Output Type Nonlinear - Output Interval Nonlinear - Nonlinear Arc-Length Solution Strategy (ArcLength if nonzero) Nonlinear - Solution Strategy Overrides: 0=none/ advanced, 1=Full Newton Raphson, 2=Modified Newton Raphson Nonlinear - Modified Newton Line Search Override (1=Skip) Nonlinear - Modified Newton Quasi-Newton Override (1=Skip) Nonlinear - Modified Newton Bisection Override (1=Skip) Nonlinear - Arc Length Method Constraint Load Scale Nonlinear - Min Arc Length Adjust Nonlinear - Max Arc Length Adjust Nonlinear - Arc Length Constraint Type Nonlinear - Arc Length Desired Iterations Nonlinear - Arc Length Max Steps Nonlinear - Max Diverging Conditions Nonlinear - Number of Quasi-Newton Vectors
INT4 NLSolutionOverride
BOOL NLNewtRaphLineSearch BOOL NLNewtRaphQuasiNewton BOOL NLNewtRaphBisection REAL8 NLArcScaleConstLoad REAL8 NLArcMinAdjust REAL8 NLArcMaxAdjust INT4 NLArcConstraintType INT4 NLArcDesiredIter INT4 NLArcMaxIncrement INT4 NLMaxDivergeCond INT4 NLQuasiNewtonVec
Property
API-1301
Property INT4 NLMaxLineSearch REAL8 NLLineSearchTolerance INT4 NLMaxBisection REAL8 NLMaxRotation REAL8 NLStressFraction REAL8 NLMaxAdjusted INT4 NLTransStepSkipFactor INT4 NLTransDominantSteps REAL8 NLTransBoundsMaintain REAL8 NLTransStabilityTol REAL8 DYNStructDamp REAL8 DYNSystemFreqDamp REAL8 DYNElemFreqDamp INT4 DYNOn INT4 DYNType INT4 DYNMassFormulation INT4 DYNDataRecovery INT4 DYNSolFreqType INT4 DYNPSDType INT4 DYNPSDInterp REAL8 DYNSolFreqSpread INT4 DYNSolFreqNumFreq REAL8 DYNSolFreqMin REAL8 DYNSolFreqMax BOOL DYNSolFreqLogInterp INT4 DYNTransTimeSteps REAL8 DYNTransTimePerStep
Description Nonlinear - Max Line Search per Iteration Nonlinear - Line Search Tolerance Nonlinear - Max Bisections per Increment Nonlinear - Max Rotation per Bisection Nonlinear - Stress Fraction Limit Nonlinear - Max Adjusted vs. Initial Increment Nonlinear - Transient Time Step Skip Factor Nonlinear - Transient Steps for Dominant Period Nonlinear - Transient Bounds to Maintain Step Nonlinear - Transient Minimum Stability Tolerance Dynamics - Overall Structural Damping Coefficient, G Dynamics - Frequency for System Damping, W3 Dynamics - Frequency for Element Damping, W4 Dynamics - Flag for Dynamic Analysis: 0=Off, 1=Direct, 2=Modal Dynamics - Addl Flag for Dynamic Analysis: 0=Off, 1=Transient, 2=Freq Dynamics - Dynamic Mass Formulation: 0=Default, 1=Lumped, 2=Coupled Dynamics - Dynamic Data Recovery: 0=Mode Displacement, 1=Mode Acceleration, 2=Matrix Dynamics - Solution Frequency Input Type Dynamics - PSD Data Type Dynamics - PSD Interpolation Method Dynamics - Spread for frequency clusters Dynamics - Solution Frequencies per Mode Dynamics - Minimum Frequency to Compute Dynamics - Maximum Frequency to Compute Dynamics - Frequency Logarithmic Interpolation Dynamics - Transient Analysis Number of Steps Dynamics - Transient Analysis Time Step
API-1302
Property
Property INT4 DYNTransOutputInterval INT4 DYNFrequencyTable INT4 DYNDampingTable INT4 DYNRandomPSD INT4 DYNResponseModes REAL8 DYNResponseMinFreq REAL8 DYNResponseMaxFreq
Description Dynamics - Transient Analysis Output Interval Dynamics - Function ID of the Frequency Table Dynamics - Function ID of the Damping Table Dynamics - Function ID of the PSD Dynamics - Number of Modes to use in Response Calculations Dynamics - Minimum Response Frequency to Keep for further analysis Dynamics - Maximum Response Frequency to Keep for further analysis
Expand
API-1303
Expand
( void ) Description: This method expands all of the geometric loads in a selected load set. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method takes the current load set object (uses the ID), and expands all of the geometric loads in that set, so that they may be retrieved as normal mesh-based loads. Example: None The specified expansion did not work.
API-1304
Compress
5.32.2.2 Compress
Compress
( void ) Description: This method compresses all of the geometric loads in a selected load set. Input: None Output: None Return Code: FE_FAIL Remarks/Usage: This method takes the current load set object (uses the ID), and compresses (deletes) any expanded loads. You are left with the unexpanded geometric loads. Example: None The specified compression did not work.
ResetNextLoad
API-1305
5.32.2.3 ResetNextLoad
ResetNextLoad
( enDataType, bAllLoadTypes, enLoadType, bOtherLoadsOnly, bIncludeExpanded ) Description: This method initializes all options prior to calling the NextLoad method below Input: The type of load entities to be retrieved. For entity information, see Section 3.3.6, "Entity Types". Can be FT_SURF_LOAD, FT_GEOM_LOAD (default), FT_NTHERM_LOAD, or FT_ETHERM_LOAD Used to limit the type of loads to be retrieved. If True, all selected loads will be returned. If False, only loads that match the type specified in enLoadType will be returned. The type of loads to return. Only used if bAllLoadTypes is False. Refer to the Load Types table in Section 3.3.7, "FEMAP Constants" for more information. If true, then only loads that are not part of a load definition will be retrieved. Otherwise all are available. If True, expanded geometric loads (if any) will be returned along with normal loads. Ignored if enDataType=FT_GEOM_LOAD.
INT4 enDataType
BOOL bAllLoadTypes
INT4 enLoadType
BOOL bOtherLoadsOnly BOOL bIncludeExpanded Output: None Return Code: FE_OK Remarks/Usage:
This method is used prior to calling NextLoad to specify which loads will be retrieved. It also resets this object so that the next call to NextLoad will return the first load available in the object. Example:
API-1306
5.32.2.4 NextLoad
NextLoad
NextLoad
( pLoad ) Description: This method returns the next available load that matches the criteria established by ResetNextLoad Input: OBJECT pLoad Output: None Return Code: FE_BAD_DATA FE_FAIL Remarks/Usage: This method, coupled with ResetNextLoad provides an easy way to retrieve all loads from a Load Set. Example: This example loops through all load sets retrieving all LoadMesh objects. For each it displays a message box. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim ls As femap.LoadSet Set ls = App.feLoadSet Dim l As femap.LoadMesh ls.ResetNextLoad( FT_SURF_LOAD, True, 0, False, False ) While ls.Next() While ls.NextLoad( l ) MsgBox(Str$(l.setID)+""+Str$(l.meshID) ) Wend Wend End Sub The data type that you are trying to retrieve is invalid. There are no more loads of the specified type to retrieve. Call ResetNextLoad to go back to the first load, if you want to retrieve the loads again. The next load object. Depending on the options specified, this could be a LoadGeom, LoadMesh, LoadNTemp or LoadGeom object
ResetNextLoadDef
API-1307
5.32.2.5 ResetNextLoadDef
ResetNextLoadDef
( bAllDataTypes, enDataType, bAllLoadTypes, enLoadType ) Description: This method initializes all options prior to calling the NextLoadDef method below Input: Used to limit the type of load definitions to be retrieved. If True, all selected load definitions will be returned. If False, only load definitions that contain loads of the type specified in enDataType will be returned. The type of load entities to be retrieved. For entity information, see Section 3.3.6, "Entity Types". Can be FT_SURF_LOAD, FT_GEOM_LOAD (default), FT_NTHERM_LOAD, or FT_ETHERM_LOAD Used to limit the type of load definitions to be retrieved. If True, all selected load definitions will be returned. If False, only load definitions that contain loads of the type specified in enLoadType will be returned. The type of loads to return. Only used if bAllLoadTypes is False. Refer to the Load Types table in Section 3.3.7, "FEMAP Constants" for more information.
BOOL bAllDataTypes
INT4 enDataType
BOOL bAllLoadTypes
This method is used prior to calling NextLoadDef to specify which load definitions will be retrieved. It also resets this object so that the next call to NextLoadDef will return the first load definition available in the object. Example:
API-1308
NextLoadDef
5.32.2.6 NextLoadDef
NextLoadDef
( pLoad ) Description: This method returns the next available load definition that matches the criteria established by ResetNextLoadDef Input: OBJECT pLoad Output: None Return Code: FE_FAIL Remarks/Usage: This method, coupled with ResetNextLoadDef provides an easy way to retrieve all load definitions from a Load Set. Example: This example loops through all load sets retrieving all nodal force LoadDefinition objects, then loops through each LoadDefinition to retrieve the individual loads. For each it displays a message box. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim ls As femap.LoadSet Set ls = App.feLoadSet Dim ld As femap.LoadDefinition Dim l As femap.LoadMesh ls.ResetNextLoadDef( False, FT_SURF_LOAD, False, FLT_NFORCE ) While ls.Next() While ls.NextLoadDef( ld ) MsgBox( "Load Set"+Str$(ld.setID)+" Load Def"+Str$(ld.ID)) While ld.NextLoad( l ) MsgBox( "Load On Node "+Str$(l.meshID) ) Wend Wend Wend End Sub There are no more load definitions of the specified type to retrieve. Call ResetNextLoadDef to go back to the first load definition, if you want to retrieve the loads again. The next load definition object. This is always a LoadDefinition object.
GetCombination
API-1309
5.32.2.7 GetCombination
GetCombination
( dOverallScale, nCombo, dScale, nSetID ) Description: This method returns the data for a Nastran LOAD Combination Set. Input: None Output: REAL8 dOverallScale INT4 nCombo REAL8 dScale[0..count-1] INT4 nSetID Return Code: FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: This is not a LOAD Combination Set. No load sets are in the combination. Overall Scale Factor for Nastran LOAD Combination. Number of entries in the LOAD Combination. The Scale Factor for the load sets in the Combination. The IDs of the load sets in the Nastran LOAD Combination.
Example: None
API-1310
PutCombination
5.32.2.8 PutCombination
PutCombination
( dOverallScale, nCombo, dScale, nSetID ) Description: This method sets the data in a Load Combination Set. Input: REAL8 dOverallScale INT4 nCombo REAL8 dScale[0..count-1] INT4 nSetID Output: None Return Code: FE_NOT_EXIST FE_BAD_TYPE Remarks/Usage: One or more Combined Load Sets specfiied do not exist. One or more Combined Load Sets specfiied is a Load Combination. Overall Scalefactor for Nastran LOAD Combination. Number of entries in the LOAD Combination. The Scale Factor for the load sets in the Combination. The IDs of the load sets in the Nastran LOAD Combination.
Example: None
PutCombination
API-1311
API-1312
5.33 MapOutput Objects
MapOutput objects correspond to the process of mapping output from a different model as loads into your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for solids. For more information, see Section 5.1, "Common Entity Properties and Methods" Use the feMapOutput method of the FEMAP Application object to create MapOutput objects
Description Method used to determine values for target locations that fall outside of source mesh: 0=FMO_ZERO; 1=FMO_VALUE; 2=FMO_EXTEND; 3=FMO_INTERP; 4=FMO_NONE X value used if target mapping falls outside of source mesh and MapOption is set to 1 (FMO_VALUE) Y value used if target mapping falls outside of source mesh and MapOption is set to 1 (FMO_VALUE) Z value used if target mapping falls outside of source mesh and MapOption is set to 1 (FMO_VALUE) The ID of the target models set of nodes or elements. Target model mapped load type: 0=FMLT_NTEMPERATURE; 1=FMLT_NFORCE; 2=FMLT_NDISPLACEMENT; 3=FMLT_NROTDISPLACEMENT; 4=FMLT_NVELOCITY; 5=FMLT_NROTVELOCITY; 6=FMLT_NACCELERATION; 7=FMLT_NROTACCELERATION; 8=FMLT_ETEMPERATURE; 9=FMLT_EHEATFLUX; 10=FMLT_EHEATGEN; 11=FMLT_EPRESSURE Mapped (target load) entity type applied to: 0=FMP_STANDARD; 1=FMP_NODE; 2=FMP_ELEMENT Note: Value used for cross-entity type mapping. If load will be applied to the same entity type as the output: e.g. source NODE to target NODE , use MapToType=FMP_STANDARD. (for same type mapping) However, for source NODE output mapping to target ELEMENT load, use FMP_ELEMENT.
REAL8 DefaultMapValue1 REAL8 DefaultMapValue2 REAL8 DefaultMapValue3 INT4 TargetSet INT4 LoadType
INT4 MapToType
MapFromModelToSet
API-1313
MapFromModelToSet
( SourceModel, Group ID, OutputSetID, OutputVector ) Description: This method maps output data from a source model to loads on a target model. It performs the same function as Femap menu command Model->Load->Map Output From Model... Input: INT4 SourceModel INT4 GroupID INT4 OutputSetID INT4 OutputVector Output: None Return Code: FE_FAIL Remarks/Usage: This method will work with any output, but will only map to types specified in LoadType. All listed properties must be set on the MapOutput object before calling this method. Example: Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim ret As Integer Dim ret As Integer Set map = App.feMapOutput Dim s As Set Set s = App.feSet Unable to get the map data. Possibly data is not stored or source group does not exist in source model or required properties are set incorrectly. ID of the source model containing output to be mapped. ID of group of entities in source model from which to map output. ID of output set in source model containing data from which to map output. ID of output vector in source model containing data from which to map output.
API-1314
MapFromModelToSet
MapFromModelToSet
( SourceModel, Group ID, OutputSetID, OutputVector ) '1 Create target Set rc = s.Select(FT_NODE, True, "Nodes" ) If s.count = 0 Then Exit Sub End If map.TargetSet = s.ID '2 Set No-map preference map.MapOption = femap.FMO_INTERP '3 Set Default values map.DefaultMapValue1 = 0.0 map.DefaultMapValue2 = 0.0 map.DefaultMapValue3 = 0.0 '4 Set element/Node conversion If any map.MapToType = femap.FMP_STANDARD '5 Set output load Type map.loadTYPE = femap.FMLT_NDISPLACEMENT '6 Get Model ID Dim modelID As Long Dim vModelID As Variant Dim num As Long Dim modelName As String modelName ="" rc = App.feAppGetAllModels(num, vModelID) For e=0 To num rc = App.feAppGetModelName(vModelID(e), modelName) If modelName <> App.ModelName Then modelID = vModelID(e) Debug.Print modelID; Exit For End If Next " - "; modelName
MapFromModelToSet
API-1315
MapFromModelToSet
( SourceModel, Group ID, OutputSetID, OutputVector ) Dim srcGroup As Long Dim srcSet As Long Dim srcVector As Long srcGroup =1 srcSet = 1 srcVector = 1 ret = map.MapFromModelToSet(modelID, srcVector) End Sub srcGroup, srcSet,
API-1316
MapFromModelToLocation
5.33.2.2 MapFromModelToLocation
MapFromModelToLocation
( SourceModel, Group ID, OutputSetID, OutputVector, XLoc, YLoc, ZLoc, vMapVal, vUnitX, vUnitY, vUnitZ ) Description: This method maps output data from a source model to any locations in space. Input: INT4 SourceModel INT4 GroupID INT4 OutputSetID INT4 OutputVector REAL8 XLoc[0...N-1] or VARIANT vXLoc REAL8 YLoc[0...N-1] or VARIANT vYLoc REAL8 ZLoc[0...N-1] or VARIANT vZLoc Output: VARIANT vMapVal VARIANT vUnitX VARIANT vUnitY VARIANT vUnitZ Return Code: FE_FAIL Remarks/Usage: Unable to get the map data. Possibly data is not stored or group does not exist in model or required MapObject properties are set incorrectly. Output value mapped to location. Values ordered 0..N-1 in VARIANT Unit x vector (global, rectangular) of corresponding mapped output value. Unit y vector (global, rectangular) of corresponding mapped output value. Unit z vector (global, rectangular) of corresponding mapped output value. ID of the source model containing output to be mapped. ID of group of entities in source model from which to map output. ID of output set in source model containing data from which to map output. ID of output vector in source model containing data from which to map output. Array of global rectangular x-coordinates for locations where data is to be mapped. N = number of locations for which mapped values are returned. Array of global rectangular y-coordinates for locations where data is to be mapped. N = number of locations for which mapped values are returned. Array of global rectangular z-coordinates for locations where data is to be mapped. N = number of locations for which mapped values are returned.
MapFromModelToLocation
API-1317
MapFromModelToLocation
( SourceModel, Group ID, OutputSetID, OutputVector, XLoc, YLoc, ZLoc, vMapVal, vUnitX, vUnitY, vUnitZ ) This method will work with any output, but will only map to types specified in LoadType. All listed properties must be set on the MapOutput object before calling this method. Example: None
API-1318
5.34 Material Objects
Material objects correspond to the materials in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for materials. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feMatl method of the FEMAP Application object, or the Matl method of the Element object to create Material objects.
API-1319
Property INT4 fmat[0..49] INT4 tmat[0..69] Description Same as fval, but returns/sets entire array as a VARIANT. Same as tval, but returns/sets entire array as a VARIANT
The following properties can be accessed directly from the value arrays, or by name using the following references. REAL8 Ex REAL8 Ey REAL8 Ez REAL8 Gx REAL8 Gy REAL8 Gz REAL8 Nuxy REAL8 Nuyz REAL8 Nuxz REAL8 Alphaxx REAL8 Alphayy REAL8 Alphazz REAL8 Alphaxy REAL8 Alphayz REAL8 Alphazx REAL8 Kxx REAL8 Kyy REAL8 Kzz REAL8 Kxy REAL8 Kyz REAL8 Kzx REAL8 Cp REAL8 Density REAL8 Damping REAL8 RefTemp Heat Capacity Density Damping Coefficient Reference Temperature Thermal Conductivity Coefficient of Thermal Expansion Poissons Ratio Shear Modulus Youngs Modulus
API-1320
Property REAL8 TensionLimit1 REAL8 TensionLimit2 REAL8 CompressionLimit1 REAL8 CompressionLimit2 REAL8 ShearLimit REAL8 TsaiWu Description Limit Stress/Strain in Tension
You can access the individual properties for the Material object by referencing the properties described above, and the data contained in the table below. For example, to retrieve the Youngs Modulus for an Isotropic material, use:
E = mt.mval(0)
or
rho = mt.mval(49)
for density. This method provides great flexibility, but can be slow if you are going to work with a large number of properties. In this case, it is best to access the data using Additional Properties. These all set and return entire arrays of values in one reference. For example, you could write:
Dim mt as Object Set mt = femap.feMatl Dim v as Variant mt.Get(1) v = mt.mmat v(0)=30.0E6 v(49)=0.1 mt.mmat = v mt.Put(1)
This code loads Material 1, retrieves the entire array of real values into v, updates the Youngs modulus and density, puts the entire array back, and saves the updated material definition. While the code is slightly longer than simply accessing the individual properties, performance will be better using this approach.
5.34.1.2 Material Array Index Values
In general, most of the material data is simply stored in the various array properties. The location of the specific property data is defined in the following table. The IDs of the functions used for function dependence of the standard properties (accessed in FEMAP by pressing the Function button on the Material dialog boxes) can be accessed by looking in the following table under the Real Values section. There you should identify the property that you want, and call the tval property with the same index as the mval property that you are looking for.
Value
API-1321
Locations
Value
Integer Values HYPER_POLYORD(i) NONLINEAR_TYPE HARDENING_TYPE YIELD_TYPE CREEP_TYPE CREEP_EMPIRICAL_FORM(i) DP_HARDENING_DATA_TYPE Boolean Values HAS_STRAIN_LIMITS FLUID IS LIQUID OPT_FRONT_SIDE OPT_REV_SIDE DMATRIX_HYP_D1_ZERO Real Values E(i) G(i) NU(i) GMATRIX_3D(i) GMATRIX_2D(i) THERMAL_EXPANSION(i) THERMAL_CONDUCTIVITY(i) THERMAL_CAPACITY
Description
Strain Energy Polynomial Order for Hyperelastic Nonlinear Type (0=None/Linear, 1=Nonlinear Elastic, 2=Plastic, 3=Elasto-Plastic Hardening Data Type Yield Criterion (0=von Mises, 1=Tresca, 2=Mohr-Coloumb, 3=Drucker-Prager) Creep Type (0=None, 1=Empirical, 2=Tabular) Empirical Creep Law Format Flags Drucker-Prager Hardening data type
Flag if material uses strain limits instead of stress limits Flag if a fluid type material is a liquid vs. a gas
bval[4]
Young's modulus Shear modulus Poisson's ratio Upper triangle of 6x6 3D anisotropic elastic matrix. Upper triangle of 3x3 2D anisotropic elastic matrix. Thermal expansion coefficients. Thermal conductivity coefficients. Specific Heat
API-1322
Value
DENSITY DAMPING TEMPERATURE
Locations
Description
Material density Damping coefficient Reference temperature Stress allowable in tension Stress allowable in compression Stress allowable in shear Tsai_wu interaction factor Hyperelastic Amatrix values Hyperelastic Dmatrix values Plasticity Hardening Slope Plasticity Yield Limits - Initial Yield Stress, Friction Angle, additional yield limits Creep Threshold Stress Creep Reference Temperature Temperature Dependent Creep Rate Empirical Creep Law Coefficients Heat Generation Value Enthalpy for Phase Change Temperature for Phase Change Onset Temperature Range for Phase Change Latent heat of Fusion Specific heat above Phase Change Temp Optical - Emissivity Optical - Emissivity, Reverse Side Optical - Absorptivity Optical - Absorptivity, Reverse Side Optical - Solar Transmissivity Optical - InfraRed Transmissivity Optical - Solar Reflectivity
Locations
mval[49] mval[50] mval[51] mval[52..53] mval[54..55] mval[56] mval[57] mval[58..78] mval[79..83] mval[84] mval[85..89] mval[90] mval[91] mval[92] mval[93..99] mval[100], or tval[57] mval[101] mval[102] mval[103] mval[104] mval[105] mval[106] mval[107] mval[108] mval[109] mval[110] mval[111] mval[112]
TENSION_LIMIT(i) COMPRESSION_LIMIT(i) SHEAR_LIMIT TSAI_WU_INTERACTION AMATRIX_HYP(i) DMATRIX_HYP(i) HARDENING_SLOPE YIELD_LIMITS(i) CREEP_THRESHOLD_STRESS CREEP_REF_TEMP CREEP_TEMP_DEP_RATE CREEP_EMPIRICAL_COEFF(i) HEAT GENERATION REFERENCE ENTHALPY PHASE CHANGE TEMP PHASE CHANGE TEMP RANGE LATENT HEAT OF FUSION SPECIFIC HEAT ABOVE PHASE OPT EMISSIVITY OPT EMISSIVITY REV OPT ABSORPTIVITY OPT ABSORPTIVITY REV OPT TRANSMISSIVITY SOLAR OPT TRANSMISSIVITY IR OPT REFLECTIVITY SOLAR
Locations
API-1323
Locations
mval[113] mval[114] mval[115] mval[116] or tval[58] mval[117] or tval[59] mval[118] or tval[60] mval[119]
Value
OPT REFLECTIVITY SOLAR REV OPT REFLECTIVITY IR OPT REFLECTIVITY IR REV GAS CONSTANT DYNAMIC VISCOSITY PRANDTL NUMBER ELECTRICAL RESISTIVITY Function Values EXPERIMENTAL_FUNCTIONS(i) NONLINEAR_FUNCTION CREEP_FUNCTIONS(i) DP_YIELD_FUNCTION OPT EMISSIVITY FUNCTION OPT_EMISSIVITY REV FUNCTION OPT ABSORPTIVITY FUNCTION OPT ABSORPTIVITY REV FUNC OPT TRANSMISSIVITY SOLAR FUNC OPT TRANSMISSIVITY IR FUNC OPT REFLECTIVITY SOLAR FUNC OPT REFLECTIVITY SOLAR REV FUNC OPT REFLECTIVITY IR FUNC OPT REFLECTIVITY IR REV FUNC ELECTRICAL RESISTIVITY FUNC
Description
Optical - Solar Reflectivity, Reverse Side Optical - InfraRed Reflectivity Optical - InfraRed Reflectivity, Reverse Fluid Gas Constant Fluid Dynamic Viscosity Prandtl Number Electrical Resistivity
IDs of Hyperelastic Experimental Data Functions ID of function for Plasticity Tabular Model Creep Function IDs ID of Drucker-Prager Yield Function ID of Optical Emissivity Function ID of Optical Emissivity Rev Side Function ID of Optical Absorptivity Function ID of Optical Absorptivity Rev Side Function ID of Solar Transmissivity Function ID of InfraRed Transmissivity Function ID of Solar Reflectivity Function ID of Solar Reflectivity, Rev Side Function ID of InfraRed Reflectivity Function ID of InfraRed Reflectivity Rev Side Function ID of Electrical Resistivity Function
fval[0..4] fval[5] fval[6..8] fval[9] fval[10] fval[11] fval[12] fval[13] fval[14] fval[15] fval[16] fval[17] fval[18] fval[19] fval[20]
API-1324
AutoComplete
AutoComplete
( void ) Description: This method automatically fills out additional properties in the material object. Input: None Output: None Return Code: None Remarks/Usage: Often you want to define a material using a particular type - for example, orthotropic. In some cases however FEMAP will need to use that material as another type - for example, anisotropic. To do this successfully, all of the properties, not just the ones for the defined type need to be completed. This method will automatically compute, using the standard definitions in FEMAP, the required properties. Only standard structural properties are supported - E, G, NU, GMATRIX_2D, GMATRIX_3D, THERMAL_EXPANSION, and THERMAL_CONDUCTIVITY, and the TENSION_LIMIT and COMPRESSION_LIMIT are currently supported. You should call this method after completing your material definition, and immediately before calling Put to store the material in the database. Example: None
API-1325
5.35 Node Objects
Node objects correspond to the nodes in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for nodes. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feNode method of the FEMAP Application object to create Node objects.
API-1326
GetAll
GetAll
( entID, x, y, z, layer, color, type, defCSys, outCSys, permBC ) Description: This method retrieves an entity with the specified ID. Input: INT4 entID Output: REAL8 x REAL8 y REAL8 z INT4 layer INT4 color INT4 type INT4 defCSys INT4 outCSys INT4 permBC[0..5] Return Code: FE_FAIL Remarks/Usage: Unlike the standard Get method, this function returns all of the properties as arguments. If you need to get all of the property data anyway, calling this will be faster than multiple calls to retrieve each property individually. Example: None The specified entity does not exist. Refer to the property descriptions for each of these items. permBC is returned in an integer array, even though it contains only True/False values. ID of the entity to retrieve.
GetAllArray
API-1327
5.35.2.2 GetAllArray
GetAllArray
( setID, numNode, entID, xyz, layer, color, type, defCSys, outCSys, permBC ) Description: This method retrieves arrays of values for a set of nodes. Input: INT4 setID Output: INT4 numNode INT4 entID[0..numNode-1] REAL8 xyz[0..(3*numNode)-1] INT4 layer[0..numNode-1] INT4 color[0..numNode-1] INT4 type[0..numNode-1] INT4 defCSys[0..numNode-1] INT4 outCSys[0..numNode-1] INT4 permBC[0..(6*numNode)-1] Return Code: FE_FAIL Remarks/Usage: This method is the fastest way to retrieve information about a large number of nodes. Example: None Unable to retrieve data from the selected nodes. The number of nodes for which data is being returned. Each entry is the ID of the associated node. The coordinates of the node. There are 3 entries, x, y, z for each node. The ID of the layer for the node. The color of the node. The type of the node. The definition coordinate system of the node. The output coordinate system of the node. Flags indicating the permanent constraints on the node. 0=off, 1=on. There are 6 entries, corresponding to the degrees of freedom for each node. ID of the set that contains the node IDs to retrieve. If 0, retrieve all nodes in the model.
API-1328
GetCoordArray
5.35.2.3 GetCoordArray
GetCoordArray
( setID, numNode, entID, xyz ) Description: This method retrieves arrays of coordinates for a set of Nodes Input: INT4 setID Output: INT4 numNode INT4 entID[0..numNode-1] REAL8 xyz[0..(3*numNode)-1] Return Code: FE_FAIL Remarks/Usage: This is a simpler form of GetAllArray, if you simply need the nodal coordinates. Example: None Unable to retrieve data from the selected nodes. The number of nodes for which data is being returned. Each entry is the ID of the associated node The coordinates of the node. There are 3 entries, x, y, z for each node. ID of the set that contains the node IDs to retrieve. If 0, retrieve all nodes in the model
PutAll
API-1329
5.35.2.4 PutAll
PutAll
( entID, x, y, z, layer, color, type, defCSys, outCSys, permBC ) Description: This method stores an entity with the specified ID. Input: INT4 entID REAL8 x REAL8 y REAL8 z INT4 layer INT4 color INT4 type INT4 defCSys INT4 outCSys INT4 permBC[0..5] Output: None Return Code: FE_FAIL Remarks/Usage: Unlike the standard Put method, this function loads all of the properties as arguments. If you are updating all of the properties before storing an entity, this function will be faster than multiple calls to load each property individually. Example: None Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. permBC is loaded in an integer array, even though it contains only True/False values. The ID of the entity to store.
API-1330
PutAllArray
5.35.2.5 PutAllArray
PutAllArray
( numNode, entID, xyz, layer, color, type, defCSys, outCSys, permBC ) Description: This method stores multiple node entities with the specified data. Input: INT4 numNode INT4 entID[0..numNode-1] REAL8 xyz[0..(3*numNode)-1] INT4 layer[0..numNode-1] INT4 color[0..numNode-1] INT4 type[0..numNode-1] INT4 defCSys[0..numNode-1] INT4 outCSys[0..numNode-1] INT4 permBC[0..(6*numNode)-1] Output: None Return Code: FE_FAIL Remarks/Usage: This is the fastest Put method if you have a large number of nodes to create. All data can be accumulated in arrays and then transferred in one call. Example: None Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. xyz is an array of the nodal coordinates, there are 3 entries for each node (must be in global rectangular coordinates). permBC is loaded in an integer array, even though it contains only True/ False values. It contains six values per node. The number of nodes to create (i.e. the number of entries in the arrays) The IDs of the nodes to store.
GetClosest
API-1331
5.35.2.6 GetClosest
GetClosest
( xyz ) Description: This method finds the Node closest to the desired location and loads it into the current object Input: REAL8 xyz[0..2] Output: None Return Code: FE_NOT_EXIST Remarks/Usage: None Example: None Unable to find closest Node. The coordinates of the location of interest.
API-1332
5.36 Optim Objects
Optim objects correspond to the Design Optimization definitions in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Optim objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feOptim method of the FEMAP Application object to create Optim objects.
Description The Optim object type: 1=Goal, 2=Vary, 3=Limit. Goal of optimization (only if type=1): 0=None,1=MinWeight Optimization variable: 0=None,1=RodArea,2=RodTorsion, 3=BarArea, 4=BarI1, 5=BarI2, 6=BarTorsion, 7=PlateThickness Optimization limit: 0=None, 1=NodXDisp, 2=NodYDisp,3=NodZDisp, 4=NodXRDisp, 5=NodYRDisp,6=NodZRDisp, 7=RodAxialStress,8=RodTorsionStress, 9=RodAxialStrain, 10=RodTorsionStrain, 11=BarAxialStress, 12=BarMaxStress, 13=BarMinStress, 14=BarAxialStrain, 15=BarMaxStrain, 16=BarMinStrain, 17=PltXNormalStress, 18=PltYNormalStress, 19=PltXYShearStress, 20=PltMaxPrinStress, 21=PltMinPrinStress, 22=PltVonMisesStress, 23=PltXNormalStrain, 24=PltYNormalStrain, 25=PltXYShearStrain, 26=PltMaxPrinStrain, 27=PltMinPrinStrain, 28=PltVonMisesStrain The number of design cycles. The type of data to vary. 11=Property Property ID to vary. Not used. If True, max/min specified as %, otherwise as values. Minimum allowable value for variable. Maximum allowable value for variable. Maximum change in variable before new analysis is required.
INT4 limit
INT4 cycles INT4 varyType INT4 varyID INT4 varyExtraID BOOL varyPct REAL8 varyMin REAL8 varyMax REAL8 varyDelta
API-1333
Property INT4 respType INT4 respID REAL8 respMin REAL8 respMax Description Response on: Node=7 or Property=11. ID of node or property for response. Minimum allowable response. Maximum allowable response.
API-1334
5.37 Output Objects
Output objects correspond to the Output data in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Output objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feOutput method of the FEMAP Application object to create Output objects.
Property STRING title INT4 component[0..19] or VARIANT vcomponent INT4 category INT4 location BOOL nonlinear INT4 hascomponent BOOL centroidtotal REAL8 maxval REAL8 minval REAL8 absmaxval INT4 maxvalID INT4 minvalID
Description Output vector title (maximum 79 characters). Component vectors. Either zero, or the IDs of the X,Y,Z components, or the IDs of the corresponding elemental corner output. See below. General category of output: 0=Any, 1=Disp, 2=Accel, 3=Force, 4=Stress, 5=Strain, 6=Temp, others=User. The location where the output is computed and stored. Nodal = 7, Elemental Centroid or Element Corner = 8. If True, this result cannot be linearly combined. If 1, component[0..2] are the X,Y,Z component values. If 2, data at end of beams. If 3, reverse data at second end of beam. If True, this vector has centroidal or nodal output. The maximum value in the output vector. The minimum value in the output vector. The maximum absolute value of any value in the output vector. The ID of the node/element where the maxval occurs. The ID of the node/element where the minval occurs.
API-1335
Property REAL8 Value[1..N] Description The output values. The index must be the ID of the node/element where the output value is stored. The value for any node or element where no output exists will be 0.0. This property can be used to manipulate results one value at a time. In general, however, it will be faster to use one or more of the output methods that manipulate entire output vectors.
API-1336
5.37.1.1 Output Components
The components are 20 vector IDs of other vectors that are "components" of the current vector. There are several possible ways these components are used:
1. The current vector contains the vector magnitude of 3 other vectors that are in the global X, Y, and Z components of similar data:
In this case, Components 0, 1, and 2 are the vector IDs of the X, Y, and Z component vectors, respectively. An example of this type of usage is Vector 1 (TOTAL TRANSLATION), which has Component 0=2(X TRANSLATION), Component 1=3(Y TRANSLATION) and Component 2=4(Z TRANSLATION). These components MUST be defined for deformed/animated plotting to work correctly. Components 3 through 19 must be 0 for this case.
2. The current vector contains data which should be plotted in a specific global direction:
In this case, if plotting should occur in Global X, then Component 0 must equal the current Vector ID. If Global Y, then Component 1 = current Vector ID, and if Global Z then Component 2 = current Vector ID. All other components must equal 0 (i.e. only 1 nonzero component and it is equal to the current Vector ID).
3. The current vector contains elemental centroidal data for elements which also have related data at the element corners:
In this case, the number of nonzero components depends upon the number of nodes on this element type (for example, output for linear plates has 4 components-4 nodes/corners). The nonzero components must equal the Vector IDs of the same type of data at the corners of the elements. For example, if the current vector is 7033 (CENTROIDAL VON MISES STRESS) then component 0 may be 20133 (CORNER1 VON MISES STRESS) and component 1 may be 30133 (CORNER2 VON MISES STRESS) etc. If you do not have corner data, all components must be 0. If the components are defined, FEMAP will use the corner data (not the data in the current vector) when calculating data at nodes (like for contouring). If no components are defined, FEMAP will assign the centroidal value to each node when doing the calculation.
4. The current vector contains line element data at one end of the element:
This is just like the previous case. The first component is the vector ID of the End A data, the second component is the vector ID of the End B data. This type of output also requires special settings in the comp_dir variable. Set comp_dir to 2 if you want FEMAP to use the data as it is specified. Set comp_dir to 3 if you want FEMAP to reverse the sign of all End B data when doing a beam diagram. This adjusts for differences in sign conventions between the various analysis programs.
5. All other cases:
All components should be 0. This will force the data in the current vector to be used for every case. The current setting of the View Option Deformed Style - Deformed Direction option will control the deformed plotting direction.
API-1337
5.37.1.2 Output Vector IDs
If you are writing your own Neutral files, you can choose any vector IDs that you want, but the normal conventions used by FEMAP are as follows: Standard Output Vectors Category Vector Range 1 to 2,999 3,000 to 5,999 6,000 to 59,999 60,000 to 79,999 1 to 9,999,999 (magnitude, or non-complex) 80,000 to 89,999 90,000 to 99,999 100,000 to 299,999 1,000,000 to 6,000,000 9,000,000 to 9,999,999 10,000,001 to 20,000,000 (complex, phase) 20,000,001 to 30,000,000 (complex, real) 30,000,001 to 40,000,000 (complex, imaginary) Nodal output Line element output Plate element output Solid element output Output on any element type PATRAN elemental output Plate corner output Laminate Ply output User Defined output Type
Same definition as magnitude data, just add 10,000,000 to IDs. Same definition as magnitude data, just add 20,000,000 to IDs. Same definition as magnitude data, just add 30,000,000 to IDs.
API-1338
Corner
Corner
( cornerID ) Description: This method creates and returns an Output object that is loaded with the output data attached to the selected element corners. Input: The cornerID to retrieve. Valid corners are from 1 to 8, depending on the element shape where the results are stored. Normally plate output uses corners 1,2,3,4. Hexahedral elements use corners 1,2,3,4,5,6,7,8. Wedges use 1,2,3 and 5,6,7. Tets use 1,2,3 and 5.
INT4 cornerID
Output: None Return Code: None Remarks/Usage: This method will only work if the current Output object has been loaded with results that reference either elemental centroidal data that also has corner data available, or with nodal data that has vector components (in which the valid corners will be 1,2,3). Example: None
API-1339
5.37.2.2 X
X
( void ) Description: This method creates and returns an Output object that is loaded with the output data attached to X component of an output vector. Input: None Output: None Return Code: None Remarks/Usage: This method is only appropriate if the current object has been loaded with results from a nodal output vector that contains vector components (Like Total Displacement, which references X Displacement, Y Displacement, and Z Displacement). Example: None
API-1340
5.37.2.3 Y
Y
( void ) Description: This method creates and returns an Output object that is loaded with the output data attached to Y component of an output vector. Input: None Output: None Return Code: None Remarks/Usage: This method is only appropriate if the current object has been loaded with results from a nodal output vector that contains vector components (Like Total Displacement, which references X Displacement, Y Displacement, and Z Displacement). Example: None
API-1341
5.37.2.4 Z
Z
( void ) Description: This method creates and returns an Output object that is loaded with the output data attached to Z component of an output vector. Input: None Output: None Return Code: None Remarks/Usage: This method is only appropriate if the current object has been loaded with results from a nodal output vector that contains vector components (Like Total Displacement, which references X Displacement, Y Displacement, and Z Displacement). Example: None
API-1342
GetFromSet
5.37.2.5 GetFromSet
GetFromSet
( setID, entID ) Description: This method retrieves data from a specified output vector, in a specified set. Input: INT4 setID INT4 entID Output: None Return Code: None Remarks/Usage: This method is simply a shortcut to replace the standard Get() method. Assuming Out is an Output object, the following two sequences are identical... Out.GetFromSet( s, v ) and Out.setID = s Out.Get( v ) Example: None The Output Set containing the output vector to retrieve The Output Vector to retrieve
GetOutputList
API-1343
5.37.2.6 GetOutputList
GetOutputList
( listcount, ID, value ) Description: This method retrieves an output vector. Input: None Output: INT4 listcount INT4 ID[0..N] REAL8 value[0..N] Return Code: FE_NOT_EXIST Remarks/Usage: This method simply retrieves the information about the output from the current object. You must first load that data - either using the Get( ) method, or by creating it yourself. Example: None There are no entries in the list. The number of entries in the ID and value arrays. The IDs of the nodes/elements where output is available.. The output values associated with the corresponding node/element in the ID array.
API-1344
GetOutputListAtID
5.37.2.7 GetOutputListAtID
GetOutputListAtID
( ID, defaultVal, value ) Description: This method retrieves data from an output vector at specified IDs. Input: INT4 ID[0..N] REAL8 defaultVal[0..N] Output: REAL8 value[0..N] Return Code: FE_FAIL Remarks/Usage: This method simply retrieves the information about the output from the current object. You must first load that data - either using the Get( ) method, or by creating it yourself. Example: None Unable to retrieve IDs from the list or allocate memory for processing. The output values associated with the corresponding node/element in the ID array. The IDs of the nodes/elements where output is being requested The default values to be returned if no output is found for a specified ID. This can be specified as NULL, in which case all default values will be 0.0.
GetOutputListAtSet
API-1345
5.37.2.8 GetOutputListAtSet
GetOutputListAtSet
( idSET, defaultVal, value ) Description: This method retrieves data from an output vector at IDs selected in a Set. Input: INT4 idSET REAL8 defaultVal[0..N] Output: REAL8 value[0..N] Return Code: FE_FAIL Remarks/Usage: This method simply retrieves the information about the output from the current object. You must first load that data - either using the Get( ) method, or by creating it yourself. Example: None Unable to retrieve IDs from the list or allocate memory for processing. The output values associated with the corresponding node/element in the ID array. The ID of a Set object that contains the IDs of the entities to retrieve. The default values to be returned if no output is found for a specified ID. This can be specified as NULL, in which case all default values will be 0.0.
API-1346
PutOutputList
5.37.2.9 PutOutputList
PutOutputList
( listcount, ID, value ) Description: This method stores data to an output vector. Input: INT4 listcount INT4 ID[0..N] INT4 value[0..N] Output: None Return Code: FE_NOT_EXIST Remarks/Usage: This method stores information into the current object. Any previous output information in that object is lost. You cannot use this method to add to an existing output vector. This method does not store that information to the model database. After using this function, you must call Put( ) if you want to store the updated lists in the database. Example: None There are no entries in the list - you specified listcount = 0. The number of entries in both the ID and value arrays. The IDs of the nodes/elements where output is being created. The output values associated with the corresponding node/element in the ID array.
InitScalarAtNode
API-1347
5.37.2.10 InitScalarAtNode
InitScalarAtNode
( outputSET, vec, title, category, nonlinear ) Description: This method initializes the current object to prepare it for creating an output vector containing a single scalar value at each node. Input: INT4 outputSET INT4 vec STRING title INT4 category BOOL nonlinear Output: None Return Code: None Remarks/Usage: This method simply sets up the various properties in a convenient manner for this style of output. You can override the parameters that are created automatically by directly manipulating the properties after the object has been initialized. Calling this method destroys any output that was previously loaded into the object. Example: None The ID of the output set where this vector will be stored. The ID of the output vector which will be created. The Output vector title (maximum 79 characters). General category of output: 0=Any, 1=Disp, 2=Accel, 3=Force, 4=Stress, 5=Strain, 6=Temp, others=User. If True, this result cannot be linearly combined.
API-1348
GetScalarAtNode
5.37.2.11 GetScalarAtNode
GetScalarAtNode
( listcount, ID, value ) Description: This method is identical to GetOutputList. It is simply an alias available for use with objects initialized with InitScalarAtNode.
GetScalarAtNodeSet
API-1349
5.37.2.12 GetScalarAtNodeSet
GetScalarAtNodeSet
( idSET, value ) Description: This method is identical to GetOutputListAtSet - except that the default values are not specified, and are always just 0.0. It is simply an alias available for use with objects initialized with InitScalarAtNode.
API-1350
PutScalarAtNode
5.37.2.13 PutScalarAtNode
PutScalarAtNode
( listcount, ID, value ) Description: This method is identical to PutOutputList. It is simply an alias available for use with objects initialized with InitScalarAtNode.
InitVectorAtNode
API-1351
5.37.2.14 InitVectorAtNode
InitVectorAtNode
( outputSET, vec, vecX, vecY, vecZ, title, category, nonlinear ) Description: This method initializes the current object to prepare it for creating output containing vector data at each node. Actually four output values are created for each node, the magnitude, and the X, Y and Z components. Input: INT4 outputSET INT4 vec INT4 vecX INT4 vecY INT4 vecZ STRING title INT4 category BOOL nonlinear Output: None Return Code: None Remarks/Usage: This method initializes the current object to contain the magnitude results, and creates three additional objects which are the X, Y and Z components of the vector results. All of the component properties are properly initialized to indicate that this is nodal vector data. Example: None The ID of the output set where this vector will be stored. The ID of the output vector which will be created to contain the magnitude of the output vectors. The ID of the output vector which will be created to contain the X components of output. The ID of the output vector which will be created to contain the Y components of output. The ID of the output vector which will be created to contain the Z components of output. The output vector title (maximum 79 characters). General category of output: 0=Any, 1=Disp, 2=Accel, 3=Force, 4=Stress, 5=Strain, 6=Temp, others=User. If True, the components of this result cannot be linearly combined. The magnitude can never be linearly combined.
API-1352
GetVectorAtSingleNode
5.37.2.15 GetVectorAtSingleNode
GetVectorAtSingleNode
( ID, x, y, z ) Description: This method retrieves the components of the results stored in an object that contains nodal vector data. Input: INT4 ID Output: REAL8 x REAL8 y REAL8 z Return Code: None Remarks/Usage: This method simply retrieves the information about the output from the current object. You must first load that data - either using the Get( ) method, or by creating it yourself. The object must contain nodal vector data for this method to work properly. Only the X,Y,Z components are returned. If you want to retrieve the magnitude data, you can do that by calling GetScalarAtNode - even though the object contains vector data. All results are returned in the coordinate system in which they were stored. Results must be stored in global rectangular coordinates to be useful in other post-processing functions. Example: None The X component of the results The Y component of the results The Z component of the results The ID of the node to retrieve output
GetVectorAtNode
API-1353
5.37.2.16 GetVectorAtNode
GetVectorAtNode
( listcount, ID, x, y, z ) Description: This method retrieves the components of the results stored in an object that contains nodal vector data. Input: None Output: INT4 listcount INT4 ID[0..N] REAL8 x[0..N] REAL8 y[0..N] REAL8 z[0..N] Return Code: None Remarks/Usage: This method simply retrieves the information about the output from the current object. You must first load that data - either using the Get( ) method, or by creating it yourself. The object must contain nodal vector data for this method to work properly. Only the X,Y,Z components are returned. If you want to retrieve the magnitude data, you can do that by calling GetScalarAtNode - even though the object contains vector data. All results are returned in the coordinate system in which they were stored. Results must be stored in global rectangular coordinates to be useful in other post-processing functions. Example: None The number of entries in the ID and x,y,z arrays. The IDs of the nodes/elements where output is available. The X component of the values associated with the corresponding node/element in the ID array. The Y component of the values associated with the corresponding node/element in the ID array. The Z component of the values associated with the corresponding node/element in the ID array.
API-1354
GetVectorAtNodeSet
5.37.2.17 GetVectorAtNodeSet
GetVectorAtNodeSet
( idSET, x, y, z ) Description: This method retrieves the components of the results stored in an object that contains nodal vector data for all IDs stored in the specifed Set. Input: INT4 idSET Output: REAL8 x[0..N] REAL8 y[0..N] REAL8 z[0..N] Return Code: None Remarks/Usage: This method simply retrieves the information about the output from the current object. You must first load that data - either using the Get( ) method, or by creating it yourself. The object must contain nodal vector data for this method to work properly. Only the X,Y,Z components are returned. If you want to retrieve the magnitude data, you can do that by calling GetScalarAtNodeSet - even though the object contains vector data. All results are returned in the coordinate system in which they were stored. Results must be stored in global rectangular coordinates to be useful in other post-processing functions. Example: None The X component of the values associated with the corresponding node/element in the Set. The Y component of the values associated with the corresponding node/element in the Set. The Z component of the values associated with the corresponding node/element in the Set. The ID of a Set object that contains the IDs of the entities to retrieve.
PutVectorAtNode
API-1355
5.37.2.18 PutVectorAtNode
PutVectorAtNode
( listcount, ID, x, y, z ) Description: This method loads nodal vector data into an object. The object must first be initialized with InitVectorAtNode. Input: INT4 listcount INT4 ID[0..N] REAL8 x[0..N] REAL8 y[0..N] REAL8 z[0..N] Output: None Return Code: None Remarks/Usage: This method stores information into the current object. Any previous output information in that object is lost. You cannot use this method to add to an existing output vector. This method does not store that information to the model database. After using this function, you must call Put( ) if you want to store the updated lists in the database. You do not have to specify the vector magnitudes with this method - they are computed and created automatically from the components. All results are stored in the coordinate system in which they were supplied. Results must be stored in global rectangular coordinates to be useful in other post-processing functions. Example: None The number of entries in the ID and x,y,z arrays. The IDs of the nodes/elements where output is being created. The X component of the values associated with the corresponding node/element in the ID array. The Y component of the values associated with the corresponding node/element in the ID array. The Z component of the values associated with the corresponding node/element in the ID array.
API-1356
InitScalarAtElem
5.37.2.19 InitScalarAtElem
InitScalarAtElem
( outputSET, vec, title, category, nonlinear ) Description: This method initializes the current object to prepare it for creating an output vector containing a single scalar value at each element. Input: INT4 outputSET INT4 vec STRING title INT4 category BOOL nonlinear Output: None Return Code: None Remarks/Usage: This method simply sets up the various properties in a convenient manner for this style of output. You can override the parameters that are created automatically by directly manipulating the properties after the object has been initialized. Calling this method destroys any output that was previously loaded into the object. Example: None The ID of the output set where this vector will be stored. The ID of the output vector which will be created. The output vector title (maximum 79 characters). General category of output: 0=Any, 1=Disp, 2=Accel, 3=Force, 4=Stress, 5=Strain, 6=Temp, others=User. If True, this result cannot be linearly combined.
GetScalarAtElem
API-1357
5.37.2.20 GetScalarAtElem
GetScalarAtElem
( listcount, ID, value ) Description: This method is identical to GetOutputList. It is simply an alias available for use with objects initialized with InitScalarAtElem.
API-1358
GetScalarAtElemSet
5.37.2.21 GetScalarAtElemSet
GetScalarAtElemSet
( idSET, value ) Description: This method is identical to GetOutputListAtSet - except that the default values are not specified, and are always just 0.0. It is simply an alias available for use with objects initialized with InitScalarAtElem.
PutScalarAtElem
API-1359
5.37.2.22 PutScalarAtElem
PutScalarAtElem
( listcount, ID, value ) Description: This method is identical to PutOutputList. It is simply an alias available for use with objects initialized with InitScalarAtElem.
API-1360
InitElemWithCorner
5.37.2.23 InitElemWithCorner
InitElemWithCorner
( outputSET, vec, vec1, vec2, vec3, vec4, vec5, vec6, vec7, vec8, title, category, nonlinear ) Description: This method initializes the current object to prepare it for creating output containing a scalar value at the element centroid, and a scalar value at each element corner. Input: INT4 outputSET INT4 vec INT4 vec1 INT4 vec2 INT4 vec3 INT4 vec4 INT4 vec5 INT4 vec6 INT4 vec7 INT4 vec8 STRING title INT4 category BOOL nonlinear Output: None Return Code: None Remarks/Usage: This method initializes the current object to contain the centroid results, and creates additional objects which are the corner results. All of the component properties are properly initialized to indicate that this is elemental data with corner values. Example: The output vector title (maximum 79 characters). General category of output: 0=Any, 1=Disp, 2=Accel, 3=Force, 4=Stress, 5=Strain, 6=Temp, others=User. If True, the components of this result cannot be linearly combined. The ID of the output vector which will be created to contain the results at the corresponding element corners. The ID of the output set where this vector will be stored. The ID of the output vector which will be created to contain the centroidal results.
InitElemWithCorner
API-1361
InitElemWithCorner
( outputSET, vec, vec1, vec2, vec3, vec4, vec5, vec6, vec7, vec8, title, category, nonlinear ) None
API-1362
GetElemWithCorner
5.37.2.24 GetElemWithCorner
GetElemWithCorner
( listcount, maxcorner, ID, centroid, c1, c2, c3, c4, c5, c6, c7, c8 ) Description: This method retrieves the centroid and corner results stored in an object that contains elemental data with corners. Input: None Output: INT4 listcount The number of entries in the ID and results arrays. The ID of the maximum corner available for this object. For example, if this object contains results on quadrilateral plates, maxcorner will typically equal 4, since results are only available for corners 1,2,3, and 4. The IDs of the nodes/elements where output is available. The results at the element centroid associated with the corresponding node/element in the ID array.
INT4 maxcorner
INT4 ID[0..N] INT4 centroid[0..N] INT4 c1[0..N] INT4 c2[0..N] INT4 c3[0..N] INT4 c4[0..N] INT4 c5[0..N] INT4 c6[0..N] INT4 c7[0..N] INT4 c8[0..N] Return Code: None Remarks/Usage:
The results at the element corners associated with the corresponding node/element in the ID array. Some elements have missing corners. For example, Tetrahedral results are stored on corners 1,2,3 and 5. Wedge results are stored on 1,2,3 and 5,6,7.
GetElemWithCorner
API-1363
GetElemWithCorner
( listcount, maxcorner, ID, centroid, c1, c2, c3, c4, c5, c6, c7, c8 ) This method simply retrieves the information about the output from the current object. You must first load that data - either using the Get( ) method, or by creating it yourself. The object must contain elemental data with corners for this method to work properly. If you only want to retrieve the centroidal data, you can do that by calling GetScalarAtElem - even though the object contains corner data. For models where the output vectors may only contain partial corner data - for example mixed quad/tri models where there is no corner output for the triangles, or at least one missing corner - this method will return the centroidal value for all missing corner data. This only applies to corners where there are some results (below maxcorner). Corners that have no output for all elements are still not returned. Example: None
API-1364
GetElemWithCornerSet
5.37.2.25 GetElemWithCornerSet
GetElemWithCornerSet
( idSET, maxcorner, centroid, c1, c2, c3, c4, c5, c6, c7, c8 ) Description: This method retrieves the centroid and corner results stored in an object that contains elemental data with corners. Results are retrieved for all elements specified in the Set Input: INT4 idSET Output: The ID of the maximum corner available for this object. For example, if this object contains results on quadrilateral plates, maxcorner will typically equal 4, since results are only available for corners 1,2,3, and 4. The results at the element centroid associated with the corresponding node/element in the Set. The ID of a Set object that contains the IDs of the entities to retrieve.
INT4 maxcorner
INT4 centroid[0..N] INT4 c1[0..N] INT4 c2[0..N] INT4 c3[0..N] INT4 c4[0..N] INT4 c5[0..N] INT4 c6[0..N] INT4 c7[0..N] INT4 c8[0..N] Return Code: None Remarks/Usage:
The results at the element corners associated with the corresponding node/element in the Set. Some elements have missing corners. For example, Tetrahedral results are stored on corners 1,2,3 and 5. Wedge results are stored on 1,2,3 and 5,6,7.
This method simply retrieves the information about the output from the current object. You must first load that data - either using the Get( ) method, or by creating it yourself. The object must contain elemental data with corners for this method to work properly. If you only want to retrieve the centroidal data, you can do that by calling GetScalarAtElemSet - even though the object contains corner data. For models where the output vectors may only contain partial corner data - for example mixed quad/tri models where there is no corner output for the triangles, or at least one missing corner - this method will return the centroidal value for all missing corner data. This only applies to corners where there are some results (below maxcorner). Corners that have no output for all elements are still not returned.
GetElemWithCornerSet
API-1365
GetElemWithCornerSet
( idSET, maxcorner, centroid, c1, c2, c3, c4, c5, c6, c7, c8 ) Example: None
API-1366
PutElemWithCorner
5.37.2.26 PutElemWithCorner
PutElemWithCorner
( listcount, maxcorner, ID, centroid, c1, c2, c3, c4, c5, c6, c7, c8 ) Description: This method loads elemental centroidal and corner data into an object. The object must first be initialized with InitElemWithCorner. Input: INT4 listcount The number of entries in the ID and results arrays. The ID of the maximum corner available for this object. For example, if this object contains results on quadrilateral plates, maxcorner will typically equal 4, since results are only available for corners 1,2,3, and 4. If you are trying to store results with less than 8 corners, you must still specify all 8 corner values, but you can simply provide dummy values for all corners past maxcorner. The IDs of the nodes/elements where output is available. The results at the element centroid associated with the corresponding node/element in the ID array.
INT4 maxcorner
INT4 ID[0..N] INT4 centroid[0..N] INT4 c1[0..N] INT4 c2[0..N] INT4 c3[0..N] INT4 c4[0..N] INT4 c5[0..N] INT4 c6[0..N] INT4 c7[0..N] INT4 c8[0..N] Output: None Return Code: None Remarks/Usage:
The results at the element corners associated with the corresponding node/element in the ID array. Some elements have missing corners. For example, Tetrahedral results are stored on corners 1,2,3 and 5. Wedge results are stored on 1,2,3 and 5,6,7.
This method stores information into the current object. Any previous output information in that object is lost. You cannot use this method to add to an existing output vector. This method does not store that information to the model database. After using this function, you must call Put( ) if you want to store the updated lists in the database.
PutElemWithCorner
API-1367
PutElemWithCorner
( listcount, maxcorner, ID, centroid, c1, c2, c3, c4, c5, c6, c7, c8 ) Example: None
API-1368
InitScalarAtBeam
5.37.2.27 InitScalarAtBeam
InitScalarAtBeam
( outputSET, vec1, vec2, title, vecstyle, category, nonlinear, bAddEndTitles ) Description: This method initializes the current object to prepare it for creating Beam output vectors for EndA and EndB containing a single scalar value at each element. Input: INT4 outputSET INT4 vec1 INT4 vec2 STRING title INT4 vecstyle INT4 category BOOL nonlinear BOOL bAddEndTitles Output: None Return Code: None Remarks/Usage: None Example: None The ID of the output set where this vector will be stored. The ID of the EndA output vector which will be created. The ID of the EndB output vector which will be created. The output vector title (maximum 79 characters). If 1, component[0..2] are the X,Y,Z component values. If 2, data at end of beams. If 3, reverse data at second end of beam General category of output: 0=Any, 1=Disp, 2=Accel, 3=Force, 4=Stress, 5=Strain, 6=Temp, others=User. If True, this result cannot be linearly combined. Flag to prepend End A, End B to the title.
PutScalarAtBeam
API-1369
5.37.2.28 PutScalarAtBeam
PutScalarAtBeam
( listcount, ID, v1, v2 ) Description: This method stores data to an output vectors for beam elements. Input: INT4 listcount INT4 ID[0..listcount-1] INT4 v1[0..listcount-1] INT4 v2[0..listcount-1] Output: None Return Code: None Remarks/Usage: None Example: None The number of the elements where output is being created. The IDs of the elements where output is being created. The EndA output values associated with the corresponding element in the ID array. The EndB output values associated with the corresponding element in the ID array.
API-1370
FindMaxMin
5.37.2.29 FindMaxMin
FindMaxMin
( idSET, bUseCornersOrComponents, minID, minValue, maxID, maxValue ) Description: This method searches the data that has been loaded to find minimum and maximum values Input: INT4 idSET BOOL bUseCornersOrComponents Output: INT4 minID REAL8 minValue INT4 maxID REAL8 maxValue Return Code: None Remarks/Usage: None Example: None The ID of node/element where the minimum value occurs The minimum output value The ID of the node/element where the maximum value occurs The maximum output value The ID of a Set object that contains the node or element IDs to search If True, and the object has corner or component data loaded, then those corners will also be searched to find the max/min values. If False, then only the primary vector will be searched.
API-1371
5.38 OutputSet Objects
OutputSet objects correspond to the output/results sets in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for OutputSet objects. For more information, see Section 5.1, "Common Entity Properties and Methods". . Use the feOutputSet method of the FEMAP Application object to create OutputSet objects.
Description Output set title (maximum 79 characters). Analysis program where output came from: 0=Unknown, 1=FEMAP Generated, 2=PAL, 3=PAL 2, 4=MSC/NASTRAN, 5=ANSYS, 6=STARDYNE, 7=COSMOS, 8=PATRAN, 9=FEMAP Neutral, 10=ALGOR, 11=SSS/NASTRAN, 12=Comma Separated, 13=UAI/NASTRAN, 14=Cosmic NASTRAN, 15=STAAD, 16=ABAQUS, 17=WECAN, 18=MTAB/ SAP, 19=CDA/Sprint, 20=CAEFEM, 21=I-DEAS, 22=ME/ NASTRAN, 26=CSA/NASTRAN, 28=CFDesign, 31=LSDYNA, 32=MARC, 33=SINDA, 38=NX Nastran. Type of analysis: 0=Unknown, 1=Static, 2=Modes, 3=Transient, 4=Frequency Response, 5=Response Spectrum, 6=Random, 7=Linear Buckling, 8=Design Opt, 9=Explicit, 10=Nonlinear Static, 11=Nonlinear Buckling, 12=Nonlinear Transient, 19=Comp Fluid Dynamics, 20=Steady State Heat Transfer, 21=Transient Heat. The output set value. For modal analyses, the modal frequency. For any transient or nonlinear analysis, the time value at this step. For Buckling, the eigenvalue. For static analysis = 0.0 One or more lines of text. Maximum 256 characters. Each line is separated by a CR-LF (0x0D, 0x0A) character pair. The end of the string is terminated by a NULL character.
INT4 analysis
REAL8 value
STRING notes
API-1372
Vector
Vector
( vectorID ) Description: This method creates and returns an Output object that is loaded with the data for a specific output vector. Input: INT4 caseID Output: None Return Code: None Remarks/Usage: The current OutputSet must be loaded with the Set data from the set where you want to retrieve the vector prior to calling this method. The OutputSet ID property is used to define the set where the vector is retrieved. Example: None The ID of the output vector to load.
OutputVectors
API-1373
5.38.2.2 OutputVectors
OutputVectors
( nVectorSetID ) Description: This method fills a Set object with the IDs of all Output vectors that are in the currently selected Output Set Input: INT4 nVectorSetID Output: None Return Code: None Remarks/Usage: You must set the ID property of the current object to match the Output Set where you want to retrieve the vectors - this happens automatically if you Get the Output Set object. Example: None The ID of a Set Object that will receive the IDs of the Output vectors
API-1374
5.39 Point Objects
Point objects correspond to the points in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for point objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the fePoint method of the FEMAP Application object to create Point objects.
Nodes
API-1375
5.39.2.1 Nodes
Nodes
( numNodes, nodeID ) Description: This method returns the nodes that are attached to this point Input: None Output: INT4 numNodes INT4 nodeID[0..numNodes-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: None Example: Unable to return nodes, possibly none exist. No nodes were attached to the point in the manner you selected. Insufficient memory to allocate list of attached nodes. The number of nodes returned. The IDs of the selected nodes which are attached to the point.
API-1376
Nodes
Nodes
( numNodes, nodeID ) The following codes modifies the color of all nodes on Point 4. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim pt As Object Set pt = App.fePoint Dim nd As Object Set nd = App.feNode Dim rc As Long Dim Count As Long Dim Nodes As Variant Dim i As Long rc = pt.Get (4) rc = pt.Nodes(Count, Nodes) For i = 0 To Count - 1 nd.Get (Nodes(i)) nd.color = 4 nd.Put (0) Next i App.feViewRegenerate(0) End Sub
NodesAsSet
API-1377
5.39.2.2 NodesAsSet
NodesAsSet
( nSetID, bClear ) Description: This method returns the nodes that are attached to this point in a Set Object Input: INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage: None Example: None Unable to return nodes, possibly none exist. The ID of the Set Object which receives the Node IDs. If True, the Set is cleared before loading the Node IDs.
API-1378
5.39.2.3 Curves
Curves
Curves
( nCombinedMode, numCurves, curveID ) Description: This method returns the curves that are attached to this point Input: 0=List contains the basic curves that are adjacent to the point, 1=Any curves that are adjacent that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=List contains both the underlying and combined curves.
INT4 nCombinedMode
Output: INT4 numCurves INT4 curveID[0..numCurves-1] Return Code: FE_FAIL Remarks/Usage: Only points that are on Solids/Sheet Solids can be used with this method. Example: None Unable to return curves, possibly none exist. The number of curves in the returned array The IDs of the curves.
CurvesAsSet
API-1379
5.39.2.4 CurvesAsSet
CurvesAsSet
( nCombinedMode, nSetID, bClear ) Description: This method returns the curves that are attached to this point in a Set Object Input: 0=List contains the basic curves that are adjacent to the point, 1=Any curves that are adjacent that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=List contains both the underlying and combined curves. ID of the Set Object to receive the Curve IDs If True, the Set is cleared before loading the curves
INT4 nCombinedMode
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
Similar to Curves, except that the attached curves are returned in a Set Object instead of an array. Only points that are on Solids/Sheet Solids can be used with this method. Example: None
API-1380
SurfacesAsSet
5.39.2.5 SurfacesAsSet
SurfacesAsSet
( nCombinedMode, nSetID, bClear ) Description: This method returns the surfaces that are attached to this point in a Set Object Input: 0=List contains the basic surfaces that are adjacent to the curve, 1=Any surfaces that are adjacent that are in a Combined Surface are replaced by the ID of the Combined Surface, 2=List contains both the underlying and combined surfaces. ID of the Set Object to receive the Surface IDs If True, the Set is cleared before loading the surfaces
INT4 nCombinedMode
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
Only points that are on Solids/Sheet Solids can be used with this method. Example: None
API-1381
5.40 Property Objects
Property objects correspond to the properties in your model. They are derived from Entity objects so, in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Property objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feProp method of the FEMAP Application object, or the Prop method of the Element object to create Property objects.
INT4 type
INT4 matlID
INT4 layupID STRING title INT4 refCS BOOL flag[0..3] or VARIANT vflag
API-1382
Property Description Array of property flags accessed as an INT4. Most flags are simply true/false and can be accessed with flag( ). For bars, beams and curved beams, where shapes are available, flagI(1) defines the type of shape selected must be accessed as an INT4. Beam/Bar Sections: 1 = Rectangular Bar, 2 = Rectangular Tube, 3 = Trapezoidal Bar, 4 = Trapezoidal Tube, 5 = Circular Bar, 6 = Circular Tube, 7 = Hex Bar, 8 = Hex Tube, 9 = I, 10 = Channel, 11 = Angle, 12 = T, 13 = Z, 14 = Hat, 15 = General NASTRAN PBEAML/PBARL sections: 16 = ROD, 17 = TUBE, 18 = L, 19 = I, 20 = CHAN, 21 = T, 22 = BOX, 23 = BAR, 24 = CROSS, 25 = H, 26 = T1, 27 = I1, 28 = CHAN1, 29 = Z, 30 = CHAN2, 31 = T2, 32 = BOX1, 33 = HEXA, 34 = HAT, 35 = HAT1 For bars, beams and curved beams, flagI(2) (End A) & flagI(3) (End B) define the Section Property Generation Method. Beam/Bar Section Property Methods: 1 = Original FEMAP, 2 = Alternate FEMAP, 3 = NASTRAN PBARL/PBEAML For laminates... Failure Theory: 0 = None, 1 = Hill, 2 = Hoffman, 3 = Tsai-Wu, 4 = Max Strain Options: 0 = As Specified, 1 = Symmetry, 2 = Membrane Only, 3 = Bending Only, 4 = Smear, 5 = Smear-core Array of property values. Array of extra material IDs. For Plate elements... ExtraMatlID[0] = Bending Material Specification ExtraMatlID[1] = Transverse Shear Material Specification ExtraMatlID[2] = Membrane-Bending Coupling Specification Link property... ExtraMatlID[0] = Conduction Calculated Material ID ExtraMatlID[1] = Convection Fluid Material ID ExtraMatlID[2] = Advection Fluid Material ID ExtraMatlID[3] = Radiation Coating Material ID Advanced Thermal Interface Style Only: Mass property... ExtraMatlID[0] = Mass Material
Additional Properties INT4 extramat[0..9] INT4 pmat[0..74] Same as plyval, but returns/sets entire array as a VARIANT. Same as pval, but returns/sets entire array as a VARIANT.
API-1383
Property Description This is a read-only property that specifies the number of points available in the current outline. You can multiply this value by 3 to get the number of real numbers that are available in outline. Gets or sets the outline drawn for a general shape. The outline array consists of real numbers. For each point in the outline, there are three consecutive entries in the array. The first two entries are the x,y coordinates (in the 2D coordinates of the outline) of the location on the outline. The third entry is a flag indicating the type of location being specified. Possible values include: 0=Off, 1=Normal, 2=Start of Loop, 3=End of Loop, 4=Stress Recovery. Points on each loop in the outline must be specified in consecutive order.
INT4 numOutline
INT4 outline[0..3N]
or
bend = pr.pval(10)
for the bending stiffness parameter of a plate property. This approach provides great flexibility, but can be slow if you are going to work with a large number of properties. In this case it is best to access the data using Additional Properties. These all set and return entire arrays of values in one reference. For example, you could write:
Dim pr as Object Set pr = femap.feProp Dim v as Variant pr.Get(1) v = pr.pmat v(0)=10.5 v(1)=14.5 pr.pmat = v pr.Put(1)
This code loads Property 1, retrieves the entire array of real values into v, updates the area and first moment of inertia (assuming the property was a bar), puts the entire array back, and saves the updated Property definition. While the code is slightly longer than simply accessing the individual properties, performance will be better using this approach.
API-1384
5.40.2.1 Property Array Index Values
In general, most of the property data is simply stored in the various array properties. The location of the specific property data is defined in the following table. For laminate properties, the ply information is stored on the layup referenced by the property.Property values are listed in the following tables:
Property Values for Rod, Bar, Tube, Link, Beam, and Spring Elements Property Values for DOF Spring, Curved Beam, Gap, Shear, Membrane, and Bending Elements Property Values for Plate, Plane Strain, Laminate, Mass, Mass Matrix, and Stiff Matrix Elements
Property Values for Rod, Bar, Tube, Link, Beam, and Spring Elements
Property Values ROD Type Flags 0 1 2 3 Values 0 1 2 3 4 5 6 J Ctors Area Cable Area I Area I1 I2 I12 J K1,eff K2,eff Dout Din Ku_A Kv_A Kw_A Kthu_A Kthv_A Kthw_A Ku_B Area_A I1_A I2_A I12_A J_A K1_A,eff K2_A,eff Stiffness Damping Bush Struc. Damping Bush Spring/ Damper Loc. Bush Trans. Stress Coeff Bush Rot. Stress Coeff Bush Trans. Strain Coeff cable compress. only gaps shape type section method pipe closed ends tapered shape type section method_A section method_B Bush orient. csys axial(1)/ torsion(0) Bush Spring/ Damper Loc. 1 2 BAR TUBE 3 4 LINK 5 BEAM 6 SPRING/ DAMPER
API-1385
Property Values ROD BAR TUBE LINK BEAM SPRING/ DAMPER Bush Rot. Strain Coeff
NSM
Kv_B
NSM_A
8 9 10 11 12 13 14
15
Zf_A4
Zf_A4
16 17 18 19 20 21 22 23 24 25 26 Perimeter cond. type 0 = Bulk 1 = Calc. Bulk cond. Calc. Area Calc. Length Calc. Cond Cond. Direct.
Yoff_A Zoff_A Warp_A Perimeter_A Area_B I1_B I2_B I12_B J_B K1_B,eff K2_B,eff
API-1386
Property Values ROD 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 Std Shape H or Radius (DIM1) Std Shape W1 (DIM2) Std Shape W2 (DIM3) Std Shape T1 (DIM4) Std Shape T2 (DIM5) Std Shape T (DIM6) Std Shape SR1 Rad. View Factor Rad. View Fac. Func. Rad. Area Rad. Emiss. Adv. Mass Flow Adv. Spec. Heat Adv. Direct. Conv. Area Conv. Coeff. BAR TUBE LINK BEAM NSM_B Yf_B1 Zf_B1 Yf_B2 Zf_B2 Yf_B3 Zf_B3 Yf_B4 Zf_B4 Yoff_B Z_offB Warp_B Perimeter_B Std Shape H or Radius (DIM1) Std Shape W1 (DIM2) Std Shape W2 (DIM3) Std Shape T1 (DIM4) Std Shape T2 (DIM5) Std Shape T (DIM6) Std Shape SR1 Bush DOF1 Stiffness Bush DOF2 Stiffness Bush DOF3 Stiffness Bush DOF4 Stiffness Bush DOF5 Stiffness Bush DOF6 Stiffness Bush DOF1 Damping Bush DOF2 Damping Bush DOF3 Damping Bush DOF4 Damping Bush DOF5 Damping SPRING/ DAMPER
API-1387
Property Values ROD BAR TUBE LINK BEAM SPRING/ DAMPER Bush DOF6 Damping Bush DOF1 K vs. Frequency Function Bush DOF2 K vs. Frequency Function Bush DOF3 K vs. Frequency Function Bush DOF4 K vs. Frequency Function Bush DOF5 K vs. Frequency Function Bush DOF6 K vs. Frequency Function Bush DOF1 F/ V vs. Freq. Function End B_Std Shape H or Radius (DIM1) B_Std Shape W1 (DIM2) B_Std Shape W2 (DIM3) B_Std Shape T (DIM4) Bush DOF2 F/ V vs. Freq. Function Bush DOF3 F/ V vs. Freq. Function Bush DOF4 F/ V vs. Freq. Function Bush DOF5 F/ V vs. Freq. Function
47
48
49
50
51
52
Shape RefY
Shape RefY
53
Shape RefZ
Shape RefZ
54
55
56
57
58
API-1388
Property Values ROD BAR TUBE LINK BEAM SPRING/ DAMPER Bush DOF6 F/ V vs. Freq. Function Bush DOF1 F vs. Disp. Function Bush DOF2 F vs. Disp. Function Bush DOF3 F vs. Disp. Function Bush DOF4 F vs. Disp. Function Bush DOF5 F vs. Disp. Function Bush DOF6 F vs. Disp. Function Bush Struc. Damping vs. Frequency
59
60
61
62
63
64
65
B_Std Shape Orient B_Std Shape RefLoc B_Shape RefY B_Shape RefZ
66 67 68
API-1389
Property Values for DOF Spring, Curved Beam, Gap, Shear, Membrane, and Bending Elements
Property Values (continued) DOF SPRING Type Flags 0 1 2 3 Values 0 1 2 3 4 5 6 7 8 9 10 Stiffness Damping Area I1 I2 I12 J K1,eff K2,eff NSM Yf_A1 Zf_A1 Yf_A2 Gap,initial Stiff,comp. Stiff,tens. Stiff,trans. Mu,y Mu,z PreloadT Plane X Plane Y Plane Z Width/Area MaxPenRat (Set value to -1 to uncheck Adaptive box) MaxAdjRat MinPenRat NSM F1,eff.fact. F2,eff.fact.
(9.1+)
CURVED BEAM 8 9
GAP
SHEAR 11/12
MEMBRANE 13/14
BENDING 15/16
NSM
F3,eff.fact.
(9.1+)
11
Zf_A2
F4,eff.fact.
12 13 14 15
API-1390
Property Values (continued) DOF SPRING 16 17 20 = Force vs. Freq. function 21 = Damping vs. Frequency function 22 = Force vs. Disp. function Std Shape H or R (DIM1) Std Shape W1 (DIM2) Std Shape W2 (DIM3) Std Shape T1 (DIM4) Std Shape T2 (DIM5) Std Shape T (DIM6) Std Shape SR1 Std Shape SR2 Std Shape SR3 Std Shape SR4 Std Shape Orient Std Shape RefLoc Shape RefY Shape RefZ R, bend rad CURVED BEAM GAP SHEAR MEMBRANE BENDING
18..39
40 41 42 43 44 45 46 47 48 49 50 51 52 53
API-1391
Property Values for Plate, Plane Strain, Laminate, Mass, Mass Matrix, and Stiff Matrix Elements
Property Values (continued) PLATE Type Flags 0 1 Values 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 NSM Top Fiber Bot Fiber 12I/T3 Ts/T Comp. Direction
(NE)Copress (NE)
LAMINATE 21/22
MASS 27
MASS MATRIX 28
STIFF MATRIX 30
17/18
Tavg,T1 T2 T3 T4
Bottom Fiber NSM Bond Shear Ref Temp Damping Ixx Ixy Iyy Izx Iyz Izz
Allowable
(NE) (NE) (NE) (NE)
API-1392
Property Values (continued) PLATE 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 M66
1. Signifies value only available in GUI when using the Advanced Thermal Interface Style. NE. Signifies these values are only available after clicking the NEiNastran Tesion Only button.
(NE) (NE)
PLANE STRAIN
LAMINATE
MASS
MASS MATRIX
STIFF MATRIX
(NE)
M55 M56
K55 K56
K66
API-1393
Property Values for Curved Tube, Slide Line, Axisymmetric Shell, and Weld/Fastener Elements
Property Values (continued) CURVED TUBE Type Flags 0 Penetration (Unsym = 1, Sym = 0)
(9.1+)M-Set
SLIDE LINE 33
CONTACT 34 (Obsolete)
WELD/FASTENER 38
31
DOF
(CWELD)
(9.1+)Spot
Weld (CWELD)
(10+)Absolute
(10+)Diameter
1 2 3 4 5 6 7 8 9 10
Din
Mass Damping
(10+)Struct (10+)KTX
Static Friction
NSM
(10+)
(10+)KRZ (10+)CWELD/CFAST
API-1394
Property Values (continued) CURVED TUBE 11 12 13 14 15 16 17 R, bend rad The following types are also available: Plot Only (10), Plot Plate (32), Axisymmetric (23/24), Solid (25/26), and Rigid (29). When two types are listed, the first number corresponds to a linear type, the second to a parabolic type. For Solid Properties (25/26): flag(0): False = Align to CSys, True = Align to Element pval(0): Intergration Network (must be a value from 0 to 3) SLIDE LINE Slave Width CONTACT AXISYM SHELL WELD/FASTENER
ComputeShape
API-1395
5.40.3.1 ComputeShape
ComputeShape
( shear_center_offset, warping, stress_recovery ) Description: This method computes the properties for a standard shape. Input: BOOL shear_center_offset BOOL warping BOOL stress_recovery Output: None Return Code: None Remarks/Usage: NOTE: This method is obsolete - for new applications you should use either ComputeStdShape() or ComputeGeneralShape() To use this method, the property must be a type that uses a shape - Bar, Beam... Prior to using this method, you must load the appropriate properties (as shown in the table above) to define the type of shape and its dimensions. This method will not work with general shapes. For bars, beams and curved beams, where shapes are available, flagI(1) defines the type of shape selected. Available values are: 1 = Rectangular Bar, 2 = Rectangular Tube, 3 = Trapezoidal Bar, 4 = Trapezoidal Tube, 5 = Circular Bar, 6 = Circular Tube, 7 = Hex Bar, 8 = Hex Tube, 9 = I, 10 = Channel, 11 = Angle, 12 = T, 13 = Z, 14 = Hat, 15 = General Example: If True, the shear center offset is computed. If True, the warping constants are computed. If True, the stress recovery locations and cross section orientation that are currently defined in the object are used for the computation. If False, default stress recovery locations and orientation are used.
API-1396
ComputeShape
ComputeShape
( shear_center_offset, warping, stress_recovery ) Sub Main() Dim App As femap.model Set App = GetObject(,"femap.model") Dim pr As Object Set pr = App.feProp pr.matlID = 1 pr.Type = 5 ' Beam pr.flagI(1) = 1 ' Rect Bar pr.pval(40) = 3 ' Height pr.pval(41) = 5 ' Width pr.pval(46) = 1 pr.pval(47) = 2 pr.pval(48) = 0 pr.pval(49) = 0 rc = pr.ComputeShape(False, False, True) pr.Put (33) End Sub This example defines a beam property and computes its properties from a 3x5 rectangular cross section. Two stress recovery locations are defined and computed. The property is stored in the model database as Property 33. This example does not define the color and layer, and they will be defaulted to the active values.
ComputeStdShape
API-1397
5.40.3.2 ComputeStdShape
ComputeStdShape
( shapeID, dimensions, shape_orient, eval_method, shear_center_offset, warping, stress_recovery ) Description: This method computes the properties for a standard shape. Input: ID of one of the... Standard Shapes ( 1 = Rectangular Bar, 2 = Rectangular Tube, 3 = Trapezoidal Bar, 4 = Trapezoidal Tube, 5 = Circular Bar, 6 = Circular Tube, 7 = Hex Bar, 8 = Hex Tube, 9 = I, 10 = Channel, 11 = Angle, 12 = T, 13 = Z, 14 = Hat ), or ... Nastran Shapes (16=Rod, 17=Tube, 18=L, 19=I, 20 = Channel, 21=T, 22=Box, 23=Bar, 24=Cross, 25=H, 26=T1, 27=I1, 28=Chan1, 29=Z, 30=Chan2, 31=T2, 32=Box1, 33=Hexa, 34=Hat, 35=Hat1). The dimensions that define the shape. Values are in the same order that they are shown in the shape dialog box. The orientation direction (0=Right, 1=Up, 2=Left, 3=Down). Ignored for the Nastran shapes - for these orientation is always Up The method used to evaluate the section properties (0=Auto, 1=Original, 2=Alternate, 3=Nastran PBEAML) If True, the shear center offset is computed. If True, the warping constants are computed. If True, the stress recovery locations and cross section orientation that are currently defined in the object are used for the computation. If False, default stress recovery locations and orientation are used.
INT4 shapeID
REAL8 dimensions[0..5] INT4 shape_orient INT4 eval_method BOOL shear_center_offset BOOL warping BOOL stress_recovery Output: None Return Code: FE_BAD_TYPE
API-1398
ComputeStdShape
ComputeStdShape
( shapeID, dimensions, shape_orient, eval_method, shear_center_offset, warping, stress_recovery ) Remarks/Usage:
The General shape is not available with this method. Use ComputeGeneralShape() instead. The Nastran PBEAML evaluator assumes thin-walled theory. If your shape is not thin it will produce an inaccurate representation of the shape. To use this method, the object must first be set to a type that uses shapes - for example a Bar or Beam. ( for example p.type = FET_L_BEAM ) If you use the Alternate eval_method, you should first set the Poissons Ratio to be used in the computation (for example p.pval(70) = 0.3) Only End A properties can be computed with this method. Tapered beams are not supported.
Example: Sub Main Dim Set Dim Set App As femap.model App = feFemap() p As femap.Prop p = App.feProp
Dim d(5) As Double d(0) d(1) d(2) d(3) = = = = 2.0 1.0 0.2 0.1
p.type = FET_L_BEAM p.ComputeStdShape( FSHP_NAS_L, d, FSOR_RIGHT, FSEV_PBEAML, True, True, True ) p.Put(1) End Sub
ComputeGeneralShape
API-1399
5.40.3.3 ComputeGeneralShape
ComputeGeneralShape
( surfaceID, vecDIR, shape_orient, eval_method, shear_center_offset, warping, stress_recovery ) Description: This method computes the properties for a general shape. Input: INT4 surfaceID REAL8 vecDIR[0..2] INT4 shape_orient INT4 eval_method BOOL shear_center_offset BOOL warping BOOL stress_recovery Output: None Return Code: FE_BAD_TYPE Remarks/Usage:
ID of a surface to be used to compute the general shape A vector that defines the original surface Y axis The orientation direction (0=Right, 1=Up, 2=Left, 3=Down). Ignored for the Nastran shapes - for these orientation is always Up The method used to evaluate the section properties (0=Auto, 1=Original, 2=Alternate) If True, the shear center offset is computed. If True, the warping constants are computed. If True, the stress recovery locations and cross section orientation that are currently defined in the object are used for the computation. If False, default stress recovery locations and orientation are used.
The Nastran PBEAML evaluator is not available for the general section To use this method, the object must first be set to a type that uses shapes - for example a Bar or Beam. ( for example p.type = FET_L_BEAM ) If you use the Alternate eval_method, you should first set the Poissons Ratio to be used in the computation (for example p.pval(70) = 0.3) Only End A properties can be computed with this method. Tapered beams are not supported.
Example:
API-1400
5.40.3.4 Matl
Matl
Matl
( void ) Description:
Input: None Output: None Return Code: None Remarks/Usage: This method loads the material that is referenced by the currently loaded property object. Example: This method must be used with a Set statement to define the Material object. Sub Main() Dim App As femap.model Set App = GetObject(, "femap.model") Dim mt As Matl Dim pr As Prop Dim prID as Long prID = 83 Set pr = App.feProp pr.Get(prID) Set mt = pr.Matl() App.feAppMessage(FCM_NORMAL, "Material: " _ + Str$(mt.ID)+ " "+mt.title) End Sub This sequence creates the mt Material object with the material data that is referenced by property 83.
Layup
API-1401
5.40.3.5 Layup
Layup
( void ) Description:
Input: None Output: None Return Code: None Remarks/Usage: This method loads the layup that is referenced by the currently loaded property object. Example:
API-1402
Thickness
5.40.3.6 Thickness
Thickness
( dAvgOrC1, dAtC2, dAtC3, dAtC4 ) Description: This method returns the thickness of the property. Input: None Output: REAL8 dAvgOrC1 REAL8 dAtC2 REAL8 dAtC3 REAL8 dAtC4 Return Code: FE_OK FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: None Example: None Property type does not have thickness. Laminate property does not reference a Layup. The thickness or alternately the thickness at corner 1. The thickness at corner 2. The thickness at corner 3. The thickness at corner 4.
Area
API-1403
5.40.3.7 Area
Area
( dAreaA, dAreaB ) Description: This method returns the area at EndA and EndB of the line element property. Input: None Output: REAL8 dAreaA REAL8 dAreaB Return Code: FE_OK FE_BAD_TYPE Remarks/Usage: None Example: None Property is not correct type. The area at EndA. The area at EndB.
API-1404
5.40.3.8 Inertia
Inertia
Inertia
( dI1A, dI2A, dI12A, dJA, dI1B, dI2B, dI12B, dJB ) Description: This method returns the Inertia properties of the line property. Input: None Output: REAL8 dI1A REAL8 dI2A REAL8 dI12A REAL8 dIJA REAL8 dI1B REAL8 dI2B REAL8 dI12B REAL8 dIJB Return Code: FE_OK FE_BAD_TYPE Remarks/Usage: None Example: None Property is not a line type. Area Moment of Inertia for plane 1 EndA Area Moment of Inertia for plane 2 EndA Cross product of inertia at EndA Torsional constant EndA Area Moment of Inertia for plane 1 EndB Area Moment of Inertia for plane 2 EndB Cross product of inertia at EndB Torsional constant EndB
API-1405
5.41 Report Objects
Report objects correspond to the report formats in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Report objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feReport method of the FEMAP Application object to create Report objects.
API-1406
5.42 Solid Objects
Solid objects correspond to the solids and volumes in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for solids. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feSolid method of the FEMAP Application object to create Solid objects.
Flags used to indicate how the surface parametric directions are reversed when defining the volume. True=Reversed The color of the volume. The layer associated with the volume. The type/shape of the volume: 0=Brick,1=Wedge,2=Pyramid,3=Tetra.
Points
API-1407
Points
( numPoints, pointID ) Description: This method returns a list of all of the points used to define this solid/volume. Input: None Output: INT4 numPoints INT4 pointID[0..numPoints-1] Return Code: FE_FAIL Remarks/Usage: This method will work with any solid/volume, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None Unable to get the point list. Possibly data is not stored or ID is not set correctly. The number of points in the pointID list. The IDs of the points on the solid.
API-1408
PointsAsSet
5.42.2.2 PointsAsSet
PointsAsSet
( nSetID, bClear ) Description: This method returns all of the points used to define this solid/volume in a Set object. Input: INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage: This method will work with any solid/volume, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None Unable to get the point list. Possibly data is not stored or ID is not set correctly. The ID of the Set Object that will contain the IDs of the Points If True, the Set is cleared prior to loading the Point IDs
Curves
API-1409
5.42.2.3 Curves
Curves
( nCombinedMode, numCurves, curveID ) Description: This method returns a list of all of the curves used to define this solid/volume. Input: 0=List contains the basic curves that are on the solid, 1=Any curves that are on the solid that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=List contains both the underlying and combined curves.
INT4 nCombinedMode
Output: INT4 numCurves INT4 curveID[0..numCurves-1] Return Code: FE_FAIL Remarks/Usage: This method will work with any solid/volume, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None Unable to get the curve list. Possibly data is not stored or ID is not set correctly. The number of curves in the curveID list. The IDs of the curves on the solid.
API-1410
CurvesAsSet
5.42.2.4 CurvesAsSet
CurvesAsSet
( nCombinedMode, nSetID, bClear ) Description: This method returns all of the curves used to define this solid/volume in a Set object. Input: 0=List contains the basic curves that are on the solid, 1=Any curves that are on the solid that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=List contains both the underlying and combined curves. The ID of the Set Object that will contain the IDs of the Curves If True, the Set is cleared prior to loading the Curve IDs
INT4 nCombinedMode
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
Unable to get the curve list. Possibly data is not stored or ID is not set correctly.
This method will work with any solid/volume, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None
FreeCurvesAsSet
API-1411
5.42.2.5 FreeCurvesAsSet
FreeCurvesAsSet
( nCombinedMode, nSetID, bClear ) Description: This method returns all of the free curves used to define this Solid in a Set object. Free curves are curves on a sheet solid that are only attached to one surface - the free edges of the sheet Input: 0=List contains the basic curves that are on the solid, 1=Any curves that are on the solid that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=List contains both the underlying and combined curves. The ID of the Set Object that will contain the IDs of the Curves If True, the Set is cleared prior to loading the Curve IDs
INT4 nCombinedMode
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
Unable to get the curve list. Possibly data is not stored or ID is not set correctly.
This method will work with any solid/volume, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None
API-1412
5.42.2.6 Surfaces
Surfaces
Surfaces
( nCombinedMode, numSurfs, surfaceID ) Description: This method returns a list of all of the surfaces used to define this solid/volume. Input: 0=List contains the basic surfaces that are on the solid, 1=Any surfaces that are on the solid that are in a Combined Surface are replaced by the ID of the Combined Surface, 2=List contains both the underlying and combined surfaces.
INT4 nCombinedMode
Output: INT4 numSurfs INT4 surfaceID[0..numSurfs-1] Return Code: FE_FAIL Remarks/Usage: This method will work with any solid/volume, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None Unable to get the surface list. Possibly data is not stored or ID is not set correctly. The number of surfaces in the surfaceID list. The IDs of the surfaces on the solid.
SurfacesAsSet
API-1413
5.42.2.7 SurfacesAsSet
SurfacesAsSet
( nCombinedMode, nSetID, bClear ) Description: This method returns a list of all of the surfaces used to define this solid/volume. Input: 0=List contains the basic surfaces that are on the solid, 1=Any surfaces that are on the solid that are in a Combined Surface are replaced by the ID of the Combined Surface, 2=List contains both the underlying and combined surfaces. The ID of the Set Object that will contain the IDs of the Surfaces If True, the Set is cleared prior to loading the Surface IDs
INT4 nCombinedMode
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
Unable to get the surface list. Possibly data is not stored or ID is not set correctly.
This method will work with any solid/volume, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None
API-1414
MassProp
5.42.2.8 MassProp
MassProp
( area, volume, cg, inertia ) Description: This function computes the mass properties of a solid. Input: None Output: REAL8 area REAL8 volume REAL8 cg[0..2] REAL8 inertia[0..9] Return Code: FE_NOT_EXIST Remarks/Usage: The cg and inertia terms are in global rectangular coordinates. This method will only work with solids. Furthermore, it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None The solid that you have selected does not exist. The total surface area of the solid. The volume of the solid (if closed). The location of the center of gravity of the solid. The 3x3 inertia matrix stored in row order [0][0], [0][1], [0][2], [1][0]...[2][2].
Export
API-1415
5.42.2.9 Export
Export
( fName ) Description: This function writes the current solid to an export (SAT or X_T) file. Input: STRING fName Output: None Return Code: FE_FAIL Remarks/Usage: This method will only work with solids. Furthermore, it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None The current object does not contain a solid (must be a solid, not a volume). The name of the file to create.
API-1416
5.42.2.10 IsSolid
IsSolid
IsSolid
( void ) Description: This function indicates whether a solid is a true, valid solid. Input: None Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method will only work with solids, not volumes. Returns FE_OK if current object is a solid. Example: None The solid is not a true solid - could be a sheet or wire. The current object does not contain a valid solid - volumes are not supported.
IsSheet
API-1417
5.42.2.11 IsSheet
IsSheet
( void ) Description: This function indicates whether a solid is a sheet solid. Input: None Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method will only work with solids, not volumes. Returns FE_OK if current object is a sheet solid. A sheet solid is a collection of surfaces, possibly stitched, but which do not enclose a closed volume. Example: None The solid is not a sheet solid - could be a solid body or wire. The current object does not contain a valid solid - volumes are not supported
API-1418
5.42.2.12 IsWire
IsWire
IsWire
( void ) Description: This function indicates whether a solid is a wire solid. Input: None Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method will only work with solids, not volumes. Returns FE_OK if current object is a wire solid. A wire solid is a collection of curves, without surfaces. Example: None The solid is not a wire solid - could be a solid body or sheet. The current object does not contain a valid solid - volumes are not supported.
IsGeneral
API-1419
5.42.2.13 IsGeneral
IsGeneral
( void ) Description: This function indicates whether a solid is a general body. Input: None Output: None Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method will only work with solids, not volumes. Returns FE_OK if current object is a general body. Example: None The solid is not a general body. The current object does not contain a valid solid - volumes are not supported.
API-1420
5.42.2.14 Facets
Facets
Facets
( numFacets, xyzFacet ) Description: This method returns the triangular facets used for display of solids. Input: None Output: INT4 numFacets REAL8 xyzFacet[0..9*numFacets-1] Return Code: FE_FAIL Remarks/Usage: This method will only work with solid faces that have facetting information. The surface information must be in the database. Only the ID from the current object is used. Example: None Not a solid, or unable to retrieve facets. The number of facets returned. The coordinates of the corners of the facets. Each facet is a triangle, and therefore has 9 coordinates. They are arranged in xyzFacet as [X1,Y1,Z1,X2,Y2,Z2,X3,Y3,Z3....] for the first facet, followed by the second and so on.
Nodes
API-1421
5.42.2.15 Nodes
Nodes
( getBoundary, getInterior, numNodes, nodeID ) Description: This method returns the nodes that are attached to this solid Input: BOOL getBoundary BOOL getInterior Output: INT4 numNodes INT4 nodeID[0..numNodes-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: None Example: Unable to return nodes, possibly none exist. No nodes were attached to the solid in the manner you selected. Insufficient memory to allocate list of attached nodes. The number of nodes returned. The IDs of the selected nodes which are attached to the solid. If True, the nodes attached to the solid boundary (the surfaces, curves and points) are selected If True, the nodes attached to the interior of the solid (not on the surfaces, curves or points) are selected
API-1422
Nodes
Nodes
( getBoundary, getInterior, numNodes, nodeID ) The following codes modifies the color of all nodes on Solid 4. Sub Main Dim App As femap.model Set App = GetObject(,"femap.model") Dim Set Dim Set Dim Dim Dim Dim so As Object so = App.feSolid nd As Object nd = App.feNode rc As Long Count As Long Nodes As Variant i As Long
solidID = 4 rc = so.Get (solidID) rc = so.Nodes(True, True, Count, Nodes) For i = 0 To Count - 1 nd.Get (Nodes(i)) nd.Color = 4 nd.Put (0) Next i App.feViewRegenerate(0) End Sub
NodesAsSet
API-1423
5.42.2.16 NodesAsSet
NodesAsSet
( getBoundary, getInterior, nSetID, bClear ) Description: This method returns the nodes that are attached to this solid in a Set Input: BOOL getBoundary BOOL getInterior INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: None Example: None Unable to return nodes, possibly none exist. No nodes were attached to the solid in the manner you selected. Insufficient memory to allocate list of attached nodes. If True, the nodes attached to the solid boundary (the surfaces, curves and points) are selected If True, the nodes attached to the interior of the solid (not on the surfaces, curves or points) are selected The ID of the Set Object that will contain the IDs of the Nodes If True, the Set is cleared prior to loading the Node IDs
API-1424
Elements
5.42.2.17 Elements
Elements
( numElems, elemID ) Description: This method returns the elements that are attached to this solid Input: None Output: INT4 numElems INT4 elemID[0..numElems-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: Only elements that have all of their nodes in the solid will be returned by this method. Elements that simply touch the solid at one edge or one node will not be returned. Example: None Unable to return elements, possibly none exist. No elements were attached to the solid in the manner you selected. Insufficient memory to allocate list of attached elements. The number of elements returned. The IDs of the selected elements which are attached to the solid.
ElementsAsSet
API-1425
5.42.2.18 ElementsAsSet
ElementsAsSet
( nSetID, bClear ) Description: This method returns the elements that are attached to this solid in a Set Input: INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: Only elements that have all of their nodes in the solid will be returned by this method. Elements that simply touch the solid at one edge or one node will not be returned. Example: None Unable to return elements, possibly none exist. No elements were attached to the solid in the manner you selected. Insufficient memory to allocate list of attached elements. The ID of the Set Object that will contain the IDs of the Elements If True, the Set is cleared prior to loading the Element IDs
API-1426
BoundingBox
5.42.2.19 BoundingBox
BoundingBox
( Box ) Description: This method returns the coordinates of a rectangular box the encloses this geometry. Input: None Output: The dimensions of the bounding box, in Global Rectangular coordinates. Box[0] - Minimum X, Box[3] - Maximum X Box[1] - Minimum Y, Box[4] - Maximum Y Box[2] - Minimum Z, Box[5] - Maximum Z
INT4 Box[0..5]
Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method always retrieves a box that is aligned with Global Rectangular coordinates, not an aligned box of minimum volume. Example: None Unable to find a bounding box. Object does not contain valid geometry. This method only works for Parasolid-based geometry.
API-1427
5.43 Surface Objects
Surface objects correspond to the surfaces (including boundary surfaces) in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Surface objects. For more information, see Section 5.1, "Common Entity Properties and Methods".. Use the feSurface method of the FEMAP Application object to create Surface objects.
Mesh Attributes INT4 attrPID INT4 attrTopology The Property ID of the meshing attribute. The shape of elements that will be meshed onto the surface (2=Tri3, 3=Tri6, 4=Quad4, 5=Quad8)
API-1428
Property INT4 attrMesher INT4 attrMappedLevel BOOL attrMapSubdivisions BOOL attrMapEqualOnly BOOL attrMapAltTri BOOL attrMapRightBias BOOL attrMapSplitQuads Description The mesher that will be used (0=Auto,1=Subdivision, 2=Fast Tri, 3=3D Tri Mapped Meshing Switch (0=Off,1=On) If True and using subdivision mesher, then additional mapped meshing may be done at the subdivision level If True, only surfaces with equal numbers of elements on opposite sides will be mapped mesh If True, and Mapped Tri meshing, the triangle cuts will alternate directions If True and Mapped Tri meshing, the first cut will be right oriented, otherwise left If True and Mapped Tri meshing, the map will be done with quads, then the quads will be split along the diagonal that makes the best triangles. If Mapped Meshing, this value is the max angle deviation from 90 deg to determine a corner of the mapped mesh If Mapped Meshing, prevents mapped meshing if a mapped corner angle is less than this value. If True, Midside nodes will be moved to (or toward) the geometry. If False, Midside nodes are at the midpoint of the element edge. This has no effect on planar surfaces. If Nonzero, then this limits the angle that an edge can be distorted as the midside node is moved toward the geometry. For the Subdivision mesher, ensures that there will be at least this number of elements along any cut between edges. Normally should be set to 1. For the Subdivision mesher, the divisions are adjusted to attempt to get a max element aspect ratio less than this value. For the Subdivision mesher, surfaces with more than this number of elements along its edges are subdivided without looking at every possibility. Not used with v10 Mesher. Quad elements with angles that are further from 90 deg than this angle are split into triangles. If True, use Laplacian smoothing. If False, Centroidal. Number of Smoothing Iterations
API-1429
Property REAL8 attrSmoothTolerance Description Tolerance value for smoothing. Smoothing will stop prior to the specified number of iterations if no nodes are moving further than this value. If True, automatically uses nodes on curves when meshing this surface (automatically connects to adjoining meshes) Tolerance between nodal locations and mesh locations on edge for finding existing edge nodes to connect. Location in element to offset from (0=Centerline, 1=Top Face, 2=Bottom Face) The meshing attribute defining the offset to be applied to elements. If True, the attributes have been initialized - probably because the surface has been meshed, or attributes have been defined. If True, for the v10 meshers, after meshing has completed the mesh is scanned for certain patterns of elements that can be adjusted to improve the mesh. The number of quad mesh layers to pave around holes
BOOL attrConnectEdgeNodes REAL8 attrConnectEdgeNodeTol INT4 attrOffsetFrom REAL8 attrOffset BOOL attrInitialized BOOL attrPostMeshCleanup
The meshing approach for the surface: 0=Not Specified, 1=Free-Parametric, 2=Free-Planar, 3=Mapped-Four Corner, 4=Mapped-Three Corner, 5=Mapped-Three Corner Fan, 6=Link to Surface, 7=Fast Tri-Parametric, 8=Fast Tri-Planar. The data for various approaches. For the mapped approaches, these are the point IDs defining the corners of the mapped mesh. For the Link to Surface approach, approachData[0] is the ID of the surface that this surface is linked to.
INT4 approachData[0..3] or VARIANT vapproachData Mesh Sizing REAL8 MeshSizeInterior REAL8 MeshSizeChord For Mesh Points on Surface INT4 MeshPoint[0..149] or VARIANT vMeshPoint For Boundary Surfaces only INT4 BoundaryCurve[0..749] or VARIANT vBoundaryCurve
API-1430
Property Description An identifier corresponding to how each curve is used in the boundary. This flag should be compared against the following values to see if the corresponding conditions exist. 0x00 - curve is used in a forward orientation 0x01 - curve is used in a reverse orientation 0x10 - curve is used as the start of a loop 0x20 - curve is used as the end of a loop 0x80 - curve is used in a loop that is part of a hole in the surface The outer loop of the boundary always comes first, starts with a curve marked with 0x10 (start of loop), and ends with a curve marked as 0x20 (end of loop). This is followed by any additional loops which define the holes in the surface. There can only be one outer loop. The mapping of the boundary for meshing: 0=Planar/Interpolate Curves, 3=Map to Surface. The ID for the surface to use for mapping if BoundaryMode=3.
Inside
API-1431
Inside
( u, v ) Description: This method finds if a parametric location lies inside the specified surface. Input: REAL8 u REAL8 v Output: None Return Code: FE_FAIL Remarks/Usage: This method will work for any type of surface except combined boundary surfaces. Use InsideXYZ for those surfaces. Example: None The location lies outside of the surface (or inside a hole). The parametric coordinates of the location to be tested.
API-1432
InsideXYZ
5.43.2.2 InsideXYZ
InsideXYZ
( xyz ) Description: This method finds if a location lies inside the specified surface. Input: REAL8 xyz[0..2] Output: None Return Code: FE_FAIL Remarks/Usage: This method will work for any type of surface including combined boundary surfaces. Example: None The location lies outside of the surface (or inside a hole). The Global Rectangular coordinates of the location to be tested.
ParamToXYZ
API-1433
5.43.2.3 ParamToXYZ
ParamToXYZ
( u, v, xyz ) Description: This method converts a parametric location (u,v) to a coordinate location (xyz). Input: REAL8 u REAL8 v Output: REAL8 xyz[0..2] Return Code: FE_FAIL Remarks/Usage: This method will work for any type of surface. Example: None Unable to compute the location. The coordinates of the location in global rectangular. The parametric coordinates of the location being specified.
API-1434
XYZToParam
5.43.2.4 XYZToParam
XYZToParam
( xyz, u, v ) Description: This method converts a coordinate location (xyz) to a parametric location (u,v). Input: REAL8 xyz[0..2] Output: REAL8 u REAL8 v Return Code: FE_FAIL Remarks/Usage: This method will work for any type of surface. Example: None Unable to compute the location. The parametric coordinates of the location. The coordinates of the location in global rectangular.
CG
API-1435
5.43.2.5 CG
CG
( xyz ) Description: This method finds the center of gravity of a surface. Input: None Output: REAL8 xyz[0..2] Return Code: FE_FAIL Remarks/Usage: This method will only work for solid surfaces. Furthermore, the surface must be Put to the model. The data in the current object is not used. Example: None Unable to compute the location. Possibly wrong surface type, ID is not set, or data is not stored in database. The coordinates of the center of gravity, in global rectangular.
API-1436
5.43.2.6 Area
Area
Area
( area ) Description: This method finds the area of a surface. Input: None Output: REAL8 area Return Code: FE_FAIL Remarks/Usage: This method will only work for solid surfaces. Furthermore, the surface must be Put to the model. The data in the current object is not used. Example: None Unable to compute the location. Possibly wrong surface type, ID is not set, or data is not stored in database. The area of the surface.
ApproximateArea
API-1437
5.43.2.7 ApproximateArea
ApproximateArea
( area ) Description: This method is similar to Area( ), however the area is not computed as precisely to improve performance Input: None Output: REAL8 area Return Code: FE_FAIL FE_BAD_TYPE FE_NOT_EXIST Remarks/Usage: This method will only work for solid surfaces. Furthermore, the surface must be Put to the model. The data in the current object is not used. Example: None Unable to compute the location. Possibly wrong surface type, ID is not set, or data is not stored in database. Surface type is not supported. This method only works with Solid and Combined Surfaces The surface does not exist The area of the surface.
API-1438
5.43.2.8 Tangents
Tangents
Tangents
( u, v, uTangent, vTangent ) Description: This method finds unit vectors in the directions of the tangents to the surface at a selected location. Input: REAL8 u REAL8 v Output: REAL8 uTangent[0..2] REAL8 vTangent[0..2] Return Code: FE_FAIL Remarks/Usage: This method will work for any surface. Example: None Unable to compute the location. Possibly wrong surface type, ID is not set, or data is not stored in database. The tangent vector in the direction of the u parametric space of the surface. The tangent vector in the direction of the v parametric space of the surface. The parametric coordinates of the location being specified.
Normal
API-1439
5.43.2.9 Normal
Normal
( u, v, normal ) Description: This method finds a unit vector in the direction of the surface normal at a selected location. Input: REAL8 u REAL8 v Output: REAL8 normal[0..2] Return Code: FE_FAIL Remarks/Usage: This method will work for any surface. Example: None Unable to compute the normal. Possibly wrong surface type, ID is not set, or data is not stored in database. The vector in the direction of the surface normal. The parametric coordinates of the location being specified.
API-1440
NormalAtXYZ
5.43.2.10 NormalAtXYZ
NormalAtXYZ
( nLocations, xyz, normal ) Description: This method finds a unit vector in the direction of the surface normal at one or more locations. Input: INT4 nLocations REAL8 xyz[0..3*nLocations-1] Output: REAL8 normal[0..3*nLocations-1] Return Code: FE_FAIL Remarks/Usage: This method will work for any surface. Example: None Unable to compute the normals. Possibly wrong surface type, ID is not set, or data is not stored in database. The vectors in the direction of the surface normals. Each set of 3 entries in this array correspond to the matching entries in the xyz array, and are the x,y and z vector components of the normal. Number of locations specified in the xyz array The Global Rectangular coordinates of the locations where you want normals computed. This array is stored [x0,y0,z0,x1,y1,z1...], and must contain 3*nLocations entries.
ProjectOnto
API-1441
5.43.2.11 ProjectOnto
ProjectOnto
( initial, tolerance, projection ) Description: This method projects a location to the closest location that lies on a surface. Input: REAL8 initial[0..2] The initial coordinates to be projected onto the surface. The tolerance within which you will consider the projected location to be on the surface. The method stops when it finds a point that is at least this close. This tolerance is only used for certain standard surface types.
REAL8 tolerance
Output: REAL8 projection[0..2] Return Code: FE_FAIL Remarks/Usage: This method will work for any surface, but all boundary surfaces must be Put to the database before using this method. Example: None Unable to compute the location. Possibly wrong surface type, ID is not set, or data is not stored in database. The projected location, on the surface.
API-1442
5.43.2.12 Solid
Solid
Solid
( nSolidID ) Description: This method returns the ID of the Solid that contains the current Surface Input: None Output: INT4 nSolidID Return Code: FE_FAIL Remarks/Usage: This method will only work with Solid surfaces and Combined Surfaces that are defined on a Solid. Example: None Unable to get the solid The ID of the Solid that references the current Surface
BoundarySurfaces
API-1443
5.43.2.13 BoundarySurfaces
BoundarySurfaces
( numSurf, surfID ) Description: For a combined surface, this method returns a list of all of the surfaces used to define this surface. Input: None Output: INT4 numSurf INT4 surfID[0..numSurf-1] Return Code: FE_FAIL FE_NOT_AVAILABLE Remarks/Usage: This method will only work with Combined Surfaces. Example: None Unable to get the surface list. Possibly data is not stored or this is not a Combined Surface No surfaces available for this surface. The number of surfaces in the surfID list. The IDs of the surfaces used to define the Combined Surface
API-1444
BoundarySurfacesAsSet
5.43.2.14 BoundarySurfacesAsSet
BoundarySurfacesAsSet
( numSurf, surfID ) Description: For a combined surface, this method returns a list of all of the surfaces used to define this surface in a Set object Input: INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL FE_NOT_AVAILABLE Remarks/Usage: This method will only work with Combined Surfaces. Example: None Unable to get the surface list. Possibly data is not stored or this is not a Combined Surface No surfaces available for this surface. The ID of the Set Object that will contain the IDs of the Surfaces If True, the Set is cleared prior to loading the Surface IDs
AdjacentSurfaces
API-1445
5.43.2.15 AdjacentSurfaces
AdjacentSurfaces
( nCombinedMode, numSurf, surfID ) Description: This method returns a list of all of the surfaces that are adjacent to the current surface. Input: 0=List contains the basic surfaces that are adjacent, 1=Any surfaces that are adjacent that are in a Combined Surface are replaced by the ID of the Combined Surface, 2=List contains both the underlying and combined surfaces.
INT4 nCombinedMode
Output: INT4 numSurf INT4 surfID[0..numSurf-1] Return Code: FE_FAIL Remarks/Usage: This method will only work with Solid Surfaces or Combined Surfaces on Solids. It finds all of the curves on the current surface and then finds and returns all of the other surfaces that use one or more of those curves. Example: None Unable to find adjacent surfaces The number of surfaces in the surfID list. The IDs of the adjacent surfaces
API-1446
AdjacentSurfacesAsSet
5.43.2.16 AdjacentSurfacesAsSet
AdjacentSurfacesAsSet
( nCombinedMode, nSetID, bClear ) Description: This method returns a list of all of the surfaces that are adjacent to the current surface in a Set object. Input: 0=List contains the basic surfaces that are adjacent, 1=Any surfaces that are adjacent that are in a Combined Surface are replaced by the ID of the Combined Surface, 2=List contains both the underlying and combined surfaces. The ID of the Set Object that will contain the IDs of the Surfaces If True, the Set is cleared prior to loading the Surface IDs
INT4 nCombinedMode
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
This method will only work with Solid Surfaces or Combined Surfaces on Solids. It finds all of the curves on the current surface and then finds and returns all of the other surfaces that use one or more of those curves. Example: None
Curves
API-1447
5.43.2.17 Curves
Curves
( nCombinedMode, numCurves, curveID ) Description: This method returns a list of all of the curves used to define this surface. Input: 0=List contains the basic curves that are on the surface, 1=Any curves that are on the surface that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=List contains both the underlying and combined curves.
INT4 nCombinedMode
Output: INT4 numCurves INT4 curveID[0..numCurves-1] Return Code: FE_FAIL Remarks/Usage: This method will work with any surface, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None Unable to get the curve list. Possibly data is not stored or ID is not set correctly. The number of curves in the curveID list. The IDs of the curves on the surface.
API-1448
CurveLoops
5.43.2.18 CurveLoops
CurveLoops
( nCombinedMode, numLoops, numCurves, curveID ) Description: This method returns a list of all of the curves used to define this surface. Unlike Curves() this method returns the curves in their order around each surface loop. Input: 0=List contains the basic curves that are on the surface, 1=Any curves that are on the surface that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=List contains both the underlying and combined curves.
INT4 nCombinedMode
Output: The number of loops on the surface and in the curveID list. A loop is a connected set of curves. Any surface with no interior holes or other features only has one loop. Each hole in the surface adds another loop. The number of entries in the curveID list. This is not the number of curves since there is an extra 0 at the end of each loop. The IDs of the curves on the surface. Each loop ends with a 0. If the ID is negative, this indicates that the curve is used in the reverse direction.
INT4 numLoops
INT4 numCurves
Unable to get the curve list. Possibly data is not stored or ID is not set correctly.
The ID list in curveID list looks like outer c1, outer c2...outer cn, 0, inner1 c1...inner1 cn, 0, ... innerN c1...innerN cn, 0 The 0 entries define the end of a loop. IDs are negative if a curve is used in reverse direction. This method will work with any surface, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None
CurvesAsSet
API-1449
5.43.2.19 CurvesAsSet
CurvesAsSet
( nCombinedMode, nSetID, bClear ) Description: This method returns a list of all of the curves used to define this surface in a Set object. Input: 0=List contains the basic curves that are on the surface, 1=Any curves that are on the surface that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=List contains both the underlying and combined curves. The ID of the Set Object that will contain the IDs of the Curves If True, the Set is cleared prior to loading the Curve IDs
INT4 nCombinedMode
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
Unable to get the curve list. Possibly data is not stored or ID is not set correctly.
This method will work with any surface, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None
API-1450
5.43.2.20 Points
Points
Points
( nCombinedMode, numPoints, pointID ) Description: This method returns a list of all of the points referenced by the surface. Input: When finding the list of points, this method first finds all curves on the surface, then points on those curves. INT4 nCombinedMode 0=Uses the basic curves that are on the surface, 1=Any curves that are on the surface that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=Uses both the underlying and combined curves.
Output: INT4 numPoints INT4 pointID[0..numPoints-1] Return Code: FE_FAIL Remarks/Usage: This method will work with any surface, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None Unable to get the point list. Possibly data is not stored or ID is not set correctly. The number of points in the pointID list. The IDs of the points on the surface.
PointsAsSet
API-1451
5.43.2.21 PointsAsSet
PointsAsSet
( nCombinedMode, nSetID, bClear ) Description: This method returns a list of all of the points referenced by the surface in a Set object. Input: When finding the list of points, this method first finds all curves on the surface, then points on those curves. INT4 nCombinedMode 0=Uses the basic curves that are on the surface, 1=Any curves that are on the surface that are in a Combined Curve are replaced by the ID of the Combined Curve, 2=Uses both the underlying and combined curves. The ID of the Set Object that will contain the IDs of the Points If True, the Set is cleared prior to loading the Point IDs
INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage:
Unable to get the point list. Possibly data is not stored or ID is not set correctly.
This method will work with any surface, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. Example: None
API-1452
EndPoints
5.43.2.22 EndPoints
EndPoints
( numPoints, pointID ) Description: This method returns a list of all of the points referenced by the surface at the ends of the defining curves. Input: None Output: INT4 numPoints INT4 pointID[0..numPoints-1] Return Code: FE_FAIL Remarks/Usage: This method will work with any surface, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. This is just like the Points method, except that function will return other points like the points at the center of an arc used to define the surface. This method will only return one pair of points (the endpoints) for each curve. Example: None Unable to get the point list. Possibly data is not stored or ID is not set correctly. The number of points in the pointID list. The IDs of the points on the surface.
EndPointsAsSet
API-1453
5.43.2.23 EndPointsAsSet
EndPointsAsSet
( nSetID, bClear ) Description: This method returns a list of all of the points referenced by the surface at the ends of the defining curves in a Set object Input: INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL Remarks/Usage: This method will work with any surface, but it uses the data stored in the database, not any changes made in the current object (until it is Put to the database). The ID field must be properly specified. This is just like the Points method, except that function will return other points like the points at the center of an arc used to define the surface. This method will only return one pair of points (the endpoints) for each curve. Example: None Unable to get the point list. Possibly data is not stored or ID is not set correctly. The ID of the Set Object that will contain the IDs of the Points If True, the Set is cleared prior to loading the Point IDs
API-1454
5.43.2.24 Planar
Planar
Planar
( base, normal ) Description: This method returns information about planar surfaces. Input: None Output: REAL8 base[0..2] REAL8 normal[0..2] Return Code: FE_FAIL Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until they are Put to the database). Note: This method has changed for consistency with other surface methods. Prior to v9.2 it did not return information about the plane. To access the old functionality, use IsPlane( ). Example: None Surface is not planar, or could not evaluate the surface. The coordinates of a point on the surface The vector that is normal to the plane
Cylindrical
API-1455
5.43.2.25 Cylindrical
Cylindrical
( radius, base, axis ) Description: This method returns information about cylindrical surfaces Input: None Output: REAL8 radius REAL8 base[0..2] REAL8 axis[0..2] Error Codes: FE_FAIL Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not cylindrical, or could not evaluate the surface. The radius of the cylinder. The coordinates of the center of the base of the cylinder. The components of the axis vector.
API-1456
Spherical
5.43.2.26 Spherical
Spherical
( radius, center ) Description: This method returns information about spherical surfaces Input: None Output: REAL8 radius REAL8 center[0..2] Error Codes: FE_FAIL Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not spherical, or could not evaluate the surface. The radius of the sphere. The coordinates of the center of the sphere.
Conical
API-1457
5.43.2.27 Conical
Conical
( radius, angle, base, axis ) Description: This method returns information about conical surfaces Input: None Output: REAL8 radius REAL8 angle REAL8 base[0..2] REAL8 axis[0..2] Error Codes: FE_FAIL Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not conical, or could not evaluate the surface. The radius of the cone in the plane of the base location. The half angle of the cone A location along the axis of the cone. The vector along the axis of the cone
API-1458
5.43.2.28 Toroidal
Toroidal
Toroidal
( radius1, radius2, base, axis ) Description: This method returns information about toroidal surfaces Input: None Output: REAL8 radius1 REAL8 radius2 REAL8 base[0..2] REAL8 axis[0..2] Error Codes: FE_FAIL Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not toroidal, or could not evaluate the surface. The major radius of the toroid. The minor radius of the toroid A location along the axis of the toroid. The vector along the axis of the toroid
IsPlane
API-1459
5.43.2.29 IsPlane
IsPlane
( void ) Description: This method indicates whether a surface is planar Input: None Output: None Error Codes: FE_FAIL FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not planar, or could not evaluate the surface. Surface is not a solid surface Surface object has not been loaded with valid data from the database
API-1460
IsCylinder
5.43.2.30 IsCylinder
IsCylinder
( void ) Description: This method indicates whether a surface is cylindrical Input: None Output: None Error Codes: FE_FAIL FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not cylindrical, or could not evaluate the surface. Surface is not a solid surface Surface object has not been loaded with valid data from the database
IsSphere
API-1461
5.43.2.31 IsSphere
IsSphere
( void ) Description: This method indicates whether a surface is spherical Input: None Output: None Error Codes: FE_FAIL FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not shperical, or could not evaluate the surface. Surface is not a solid surface Surface object has not been loaded with valid data from the database
API-1462
5.43.2.32 IsCone
IsCone
IsCone
( void ) Description: This method indicates whether a surface is conical Input: None Output: None Error Codes: FE_FAIL FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not conical, or could not evaluate the surface. Surface is not a solid surface Surface object has not been loaded with valid data from the database
IsTorus
API-1463
5.43.2.33 IsTorus
IsTorus
( void ) Description: This method indicates whether a surface is toroidal Input: None Output: None Error Codes: FE_FAIL FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Surface is not toroidal, or could not evaluate the surface. Surface is not a solid surface Surface object has not been loaded with valid data from the database
API-1464
IsBoundingSolidRegion
5.43.2.34 IsBoundingSolidRegion
IsBoundingSolidRegion
( void ) Description: This method indicates whether a surface is part of a solid body definition. Input: None Output: None Error Codes: FE_FAIL FE_BAD_TYPE Remarks/Usage: This method will only work with solid surfaces, not surfaces created with the FEMAP Standard geometry engine. It uses the data stored in the database, not any changes made in the current object (until it is Put to the database). Example: None Could not evaluate the surface. Surface is not a solid surface
Facets
API-1465
5.43.2.35 Facets
Facets
( numFacets, xyzFacet ) Description: This method returns the triangular facets used for display of solid surfaces. Input: None Output: INT4 numFacets REAL8 xyzFacet[0..9*numFacets-1] Return Code: FE_FAIL Remarks/Usage: This method will only work with solid faces that have facetting information. The surface information must be in the database. Only the ID from the current object is used. Example: None Wrong type of surface, or unable to retrieve facets. The number of facets returned. The coordinates of the corners of the facets. Each facet is a triangle, and therefore has 9 coordinates. They are arranged in xyzFacet as [X1,Y1,Z1,X2,Y2,Z2,X3,Y3,Z3....] for the first facet, followed by the second and so on.
API-1466
5.43.2.36 Nodes
Nodes
Nodes
( getBoundary, getInterior, numNodes, nodeID ) Description: This method returns the nodes that are attached to this surface Input: BOOL getBoundary BOOL getInterior Output: INT4 numNodes INT4 nodeID[0..numNodes-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: None Example: Unable to return nodes, possibly none exist. No nodes were attached to the surface in the manner you selected. Insufficient memory to allocate list of attached nodes. The number of nodes returned. The IDs of the selected nodes which are attached to the surface. If True, the nodes attached to the surface boundary (the curves and points) are selected If True, the nodes attached to the interior of the surface (not on the curves or points) are selected
Nodes
API-1467
Nodes
( getBoundary, getInterior, numNodes, nodeID ) The following code modifies the color of all nodes on Surface 4. Sub Main() Dim App As femap.model Set App = GetObject(,"femap.model") Dim Set Dim Set Dim Dim Dim Dim su As Surface su = App.feSurface nd As Node nd = App.feNode rc As Long Count As Long Nodes As Variant i As Long
surfID = 4 rc = su.Get (surfID) rc = su.Nodes(True, True, Count, Nodes) For i = 0 To Count - 1 nd.Get (Nodes(i)) nd.Color = 4 nd.Put (0) Next i App.feViewRegenerate(0) End Sub
API-1468
NodesAsSet
5.43.2.37 NodesAsSet
NodesAsSet
( getBoundary, getInterior, nSetID, bClear ) Description: This method returns the nodes that are attached to this surface in a Set object Input: BOOL getBoundary BOOL getInterior INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: None Example: None Unable to return nodes, possibly none exist. No nodes were attached to the surface in the manner you selected. Insufficient memory to allocate list of attached nodes. If True, the nodes attached to the surface boundary (the curves and points) are selected If True, the nodes attached to the interior of the surface (not on the curves or points) are selected The ID of the Set Object that will contain the IDs of the Nodes If True, the Set is cleared prior to loading the Node IDs
Elements
API-1469
5.43.2.38 Elements
Elements
( numElems, elemID ) Description: This method returns the elements that are attached to this surface Input: None Output: INT4 numElems INT4 elemID[0..numElems-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: Only elements that have all of their nodes on the surface will be returned by this method. Elements that simply touch the surface at one edge or one node will not be returned. Similarly, solid elements with one face on the surface will not be returned. Example: None Unable to return elements, possibly none exist. No elements were attached to the surface in the manner you selected. Insufficient memory to allocate list of attached elements. The number of elements returned. The IDs of the selected elements which are attached to the surface.
API-1470
ElementsAsSet
5.43.2.39 ElementsAsSet
ElementsAsSet
( nSetID, bClear ) Description: This method returns the elements that are attached to this surface in a Set object Input: INT4 nSetID BOOL bClear Output: None Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: Only elements that have all of their nodes on the surface will be returned by this method. Elements that simply touch the surface at one edge or one node will not be returned. Similarly, solid elements with one face on the surface will not be returned. Example: None Unable to return elements, possibly none exist. No elements were attached to the surface in the manner you selected. Insufficient memory to allocate list of attached elements. The ID of the Set Object that will contain the IDs of the Elements If True, the Set is cleared prior to loading the Element IDs
ElementsWithFaces
API-1471
5.43.2.40 ElementsWithFaces
ElementsWithFaces
( numElems, elemID ) Description: This method returns the elements that have faces which are attached to this surface Input: None Output: INT4 numElems INT4 elemID[0..numElems-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: Only elements that have faces on the surface will be returned by this method. Solid elements with one face on the surface will be returned, as will planar elements meshed on the surface. Other elements that simply touch the surface at a corner, or solid elements touching just along an edge will not be returned. Example: None Unable to return elements, possibly none exist. No elements were attached to the surface in the manner you selected. Insufficient memory to allocate list of attached elements. The number of elements returned. The IDs of the selected elements which have faces that are attached to the surface.
API-1472
ElementFaces
5.43.2.41 ElementFaces
ElementFaces
( getPlaneElem, getSolidElem, requireElemAttach, numFaces, elemID, faceID ) Description: This method returns the element faces that are attached to this surface Input: BOOL getPlaneElem BOOL getSolidElem BOOL requireElemAttach Output: INT4 numFaces INT4 elemID[0..numFaces-1] INT4 faceID[0..numFaces-1] Return Code: FE_FAIL FE_NOT_EXIST FE_NO_MEMORY Remarks/Usage: The elemID and faceID arrays are stored in corresponding order . . . elemID[i] and faceID[i] together represent the element face that is actually attached to the surface. Example: None Unable to return element faces, possibly none exist. No faces were attached to the surface in the manner you selected. Insufficient memory to allocate lists of attached elements/faces. The number of elements and faces returned. The IDs of the selected elements which have faces that are attached to the surface. The IDs of the faces of the elements which are on the surface. If True, planar elements with faces on the surface will be returned. If True, solid elements with faces on the surface will be returned. If True, planar elements must actually have been meshed on the surface, not just have all of its nodes on the surface.
BoundingBox
API-1473
5.43.2.42 BoundingBox
BoundingBox
( Box ) Description: This method returns the coordinates of a rectangular box the encloses this geometry. Input: None Output: The dimensions of the bounding box, in Global Rectangular coordinates. Box[0] - Minimum X, Box[3] - Maximum X Box[1] - Minimum Y, Box[4] - Maximum Y Box[2] - Minimum Z, Box[5] - Maximum Z
INT4 Box[0..5]
Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method always retrieves a box that is aligned with Global Rectangular coordinates, not an aligned box of minimum volume. Example: None Unable to find a bounding box. Object does not contain valid geometry. This method only works for Parasolid-based geometry.
API-1474
BoundingSize
5.43.2.43 BoundingSize
BoundingSize
( pvDim, pvLongDir, pvNormalDir ) Description: This method finds the sizes of the smallest box that encloses the surface and the direction of the longest side and the shortest side Input: None Output: VARIANT pvDim[0..2] VARIANT pvLongDir[0..2] VARIANT pvNormalDir[0..2] Return Code: FE_FAIL FE_INVALID Remarks/Usage: This method will only work for solid surfaces. Furthermore, the surface must be Put to the model. The data in the current object is not used. Example: None Unable to compute the size. Possibly wrong surface type, ID is not set, or data is not stored in database. Invalid surface type, this method only works with Solid and Combined surfaces. The dimensions of the bounding box The direction along the longest side The direction along the shortest side of the box (normal to a planar surface)
NormalBox
API-1475
5.43.2.44 NormalBox
NormalBox
( box ) Description: This method finds a bounding box around the unit normals Input: None Output: The values of the normal bounding box, in Global Rectangular coordinates. Box[0] - Minimum dX, Box[3] - Maximum dX Box[1] - Minimum dY, Box[4] - Maximum dY Box[2] - Minimum dZ, Box[5] - Maximum dZ
REAL8 box[0..5]
Return Code: FE_FAIL Remarks/Usage: This method will work for any surface. Example: None Unable to compute the normals. Possibly wrong surface type, ID is not set, or data is not stored in database.
API-1476
MaxNormalDeviation
5.43.2.45 MaxNormalDeviation
MaxNormalDeviation
( dLimit, dAngle ) Description: This method the maximum angle between the normal vectors on this surface Input: A maximum angle that is acceptable. Normally set this to 0.0 - which means to return any angle variation. If you set this to some other positive number, then the method will fail if the angle is greater than the specified value.
REAL8 dLimit
Output: REAL8 dAngle Return Code: FE_FAIL FE_NOT_AVAILABLE FE_NO_MEMORY Remarks/Usage: This is an approximate method. It uses the normals at the corners of facets, therefore you are not guaranteed that the maximum deviation will not be slightly larger than the value computed. Example: None The maximum angle exceeded the limit you set. (dAngle is invalid) Surface facetting information is not available to compute the normals Not enough memory to load all of the surface facets. The maximum angle between normal vectors
AngleAtPoint
API-1477
5.43.2.46 AngleAtPoint
AngleAtPoint
( nPtID, dAngle, vBisector, vNormal ) Description: This method retrieves the internal angle, the surface normal vector, and a surface tangent vector that bisects the angle at a point on a surface boundary Input: INT4 nPtID Output: REAL8 dAngle REAL8 vBisector[0..2] REAL8 vNormal[0..2] Return Code: FE_FAIL FE_NOT_AVAILABLE FE_NO_MEMORY Remarks/Usage: None Example: None Unable to determne the requested information. The selected point was not found Not enough memory to load all of the surface facets. The angle, in the surface, formed by the edges meeting at the selected point The surface tangent vector that bisects the angle The surface normal at the point The ID of the point to check
API-1478
5.43.2.47 HasPole
HasPole
HasPole
( void ) Description: This method indicates whether a surface contains a pole. Input: None Output: None Return Code: FE_FAIL FE_BAD_TYPE FE_NOT_AVAILABLE Remarks/Usage: Surface does not contain a pole, or could not evaluate the surface. Surface is not a Parasolid surface Surface object has not been loaded with valid data from the database
Example: None
MinRadiiOfCurvature
API-1479
5.43.2.48 MinRadiiOfCurvature
MinRadiiOfCurvature
( pdConcaveRadius, pdConvexRadius, pbIsPlanar ) Description: This method returns the minimum concave and convex radii of curvature of a surface Input: None Output: REAL8 pdConcaveRadius REAL8 pdConvexRadius BOOL pbIsPlanar Return Code: None Remarks/Usage: Use this method to reset all parameters, then adjust individual properties to suit your needs. Example: None The minimum radius of curvature on the concave side of the surface The maximum radius of curvature on the concave side of the surface True if the surface is plaanr
API-1480
RationalParamToXYZ
5.43.2.49 RationalParamToXYZ
RationalParamToXYZ
( u, v, XYZ ) Description: This method converts a parametric location (u,v) to a coordinate location (xyz) using rational uv space. Input: REAL8 u REAL8 v Output: REAL8 XYZ[0..2] Return Code: FE_FAIL Remarks/Usage: Unable to compute the location. The coordinates of the location in global rectangular. The rational parametric coordinates of the location being specified. Parametric coordinates are between 0 and 1
Example: None
ResetMeshAttr
API-1481
5.43.2.50 ResetMeshAttr
ResetMeshAttr
() Description: This method resets the mesh attribute parameters to default values. Input: None Output: None Return Code: None Remarks/Usage: Use this method to reset all parameters, then adjust individual properties to suit your needs. Example: None
API-1482
5.43.2.51 Mesh
Mesh
Mesh
( propID, elemShape, bAllowMapped ) Description: This method meshes the surface using the current meshing attributes and the values specified. Input: Specifies the ID of the property to use for elements as they are created. If you want to use predefined meshing attributes, set propID=0. In this case, all selected surfaces must have meshing attributes defined or they will not be meshed. The propID property must be compatible with surface meshing. The shape of the elements to mesh. Must be 2=Tria3, 3=Tria6, 4=Quad4, 5=Quad8 or set to 0 to use the shape that is predefined on the meshing attributes. If True, mapped meshing of the surfaces is allowed, otherwise it is not. This argument is ignored if elemShape=0
INT4 propID
INT4 elemShape
BOOL bAllowMapped Output: None Return Code: FE_FAIL FE_INVALID FE_NOT_EXIST FE_NOT_AVAILABLE Remarks/Usage:
Could not mesh surfaces. The value specified for elemShape is invalid The property specified does not exist. No surface has been loaded in the current object.
This method simply calls the application method feMeshSurface2( ) with the ID of the current surface and without resetting meshing attributes. If you have made changes to the meshing attributes in the current surface object, you must call Put() prior to calling this method or those changes will not be used. Example:
Mesh
API-1483
Mesh
( propID, elemShape, bAllowMapped ) This example meshes Surface 2 with Parabolic Quad elements that are offset by 0.1 Sub Main Dim Set Dim Set App As femap.model App = feFemap() s As femap.Surface s = App.feSurface
s.Get(2) s.ResetMeshAttr() s.attrOffset = 0.1 s.attrOffsetFrom = FMOF_TOP s.Put(2) s.Mesh(1,FTO_QUAD8,True) End Sub
API-1484
5.44 Text Objects
Text objects correspond to the text entities in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for text. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feText method of the FEMAP Application object to create Text objects.
REAL8 TextPosition[0..2] or VARIANT vTextPosition REAL8 PointerPosition[0..2] or VARIANT vPointerPosition INT4 HorzJustify INT4 VertJustify INT4 FontNumber STRING text
API-1485
API-1486
5.44.2 Text Object Methods
There are no Text object-specific methods. Only the standard entity methods are available.
API-1487
5.45 TMGBC Objects
TMGBC objects correspond to the TMG-defined boundary condition data in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for TmbBC Objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feTMGBC method of the FEMAP Application object to create TMGBC objects.
Real array.
API-1488
GetAll
GetAll
( entID, i, r, c ) Description: This method retrieves an entity with the specified ID. Input: INT4 entID Output: INT4 i REAL8 r INT4 c Return Code: FE_FAIL Remarks/Usage: The specified entity does not exist. Refer to the property descriptions for each of these items. c is returned in an integer array, even though it contains only char values. ID of the entity to retrieve.
Example: None
PutAll
API-1489
5.45.2.2 PutAll
PutAll
( entID, i, r, c ) Description: This method stores an entity with the specified ID. Input: INT4 entID INT4 i REAL8 r INT4 c Output: None Return Code: FE_FAIL Remarks/Usage: Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. c is loaded in an integer array, even though it contains only char values. The ID of the entity to store.
Example: None
API-1490
5.46 TMGCtrl Objects
TMGCtrl objects correspond to the TMG-defined control data in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for TMGCtrl objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feTMGCtrl method of the FEMAP Application object to create TMGCtrl objects.
Real array.
Boolean array.
GetAll
API-1491
GetAll
( entID, i, r, b, c ) Description: This method retrieves an entity with the specified ID. Input: INT4 entID Output: INT4 i REAL8 r BOOLEAN b INT4 c Return Code: FE_FAIL Remarks/Usage: The specified entity does not exist. Refer to the property descriptions for each of these items. c is returned in an integer array, even though it contains only char values. ID of the entity to retrieve.
Example: None
API-1492
5.46.2.2 PutAll
PutAll
PutAll
( entID, i, r, b, c ) Description: This method stores an entity with the specified ID. Input: INT4 entID INT4 i REAL8 r BOOLEAN b INT4 c Output: None Return Code: FE_FAIL Remarks/Usage: Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. c is loaded in an integer array, even though it contains only char values. The ID of the entity to store.
Example: None
API-1493
5.47 TMGInt Objects
TMGInt objects correspond to the TMG-defined integer data in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for TmbInt objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feTMGInt method of the FEMAP Application object to create TMGInt Objects.
API-1494
GetAll
GetAll
( entID, i ) Description: This method retrieves an entity with the specified ID. Input: INT4 entID Output: INT4 i Return Code: FE_FAIL Remarks/Usage: The specified entity does not exist. Refer to the property descriptions for each of these items. ID of the entity to retrieve.
Example: None
PutAll
API-1495
5.47.2.2 PutAll
PutAll
( entID, i ) Description: This method stores an entity with the specified ID. Input: INT4 entID INT4 i Output: None Return Code: FE_FAIL Remarks/Usage: Unable to store the entity with the specified ID. The ID of the entity to store. Refer to the property descriptions for each of these items. c is loaded in an integer array, even though it contains only char values.
Example: None
API-1496
5.48 TMGOpt Objects
TMGOpt objects correspond to the TMG-defined option data in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for TMGOpt objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feTMGOpt method of the FEMAP Application object to create TMGOpt objects.
Real array.
GetAll
API-1497
GetAll
( entID, i, r, c ) Description: This method retrieves an entity with the specified ID. Input: INT4 entID Output: INT4 i REAL8 r INT4 c Return Code: FE_FAIL Remarks/Usage: The specified entity does not exist. Refer to the property descriptions for each of these items. c is returned in an integer array, even though it contains only char values. ID of the entity to retrieve.
Example: None
API-1498
5.48.2.2 PutAll
PutAll
PutAll
( entID, i, r, c ) Description: This method stores an entity with the specified ID. Input: INT4 entID INT4 i REAL8 r INT4 c Output: None Return Code: FE_FAIL Remarks/Usage: Unable to store the entity with the specified ID. Refer to the property descriptions for each of these items. c is loaded in an integer array, even though it contains only char values. The ID of the entity to store.
Example: None
API-1499
5.49 TMGReal Objects
TMGReal objects correspond to the TMG-defined real data in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for TMGReal objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feTMGReal method of the FEMAP Application object to create TMGReal objects.
Real array.
API-1500
GetAll
GetAll
( entID, i, r ) Description: This method retrieves an entity with the specified ID. Input: INT4 entID Output: INT4 i REAL8 r Return Code: FE_FAIL Remarks/Usage: The specified entity does not exist. Refer to the property descriptions for each of these items. ID of the entity to retrieve.
Example: None
PutAll
API-1501
5.49.2.2 PutAll
PutAll
( entID, i, r ) Description: This method stores an entity with the specified ID. Input: INT4 entID INT4 i REAL8 r Output: None Return Code: FE_FAIL Remarks/Usage: Unable to store the entity with the specified ID. The ID of the entity to store. Refer to the property descriptions for each of these items.
Example: None
API-1502
5.50 Variable Objects
Variable objects correspond to the variables in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for Variable objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feVar method of the FEMAP Application object to create Variable objects.
GetVarID
API-1503
GetVarID
( varname ) Description: This method retrieves the encoded ID that is associated with a specified variable name. Input: STRING varname Output: None Return Code: INT4 ID Remarks/Usage: You do not need to have a variable with the specified name to use this function. Example: None The ID associated with the name. The name of the variable to compute the associated ID.
API-1504
5.50.2.2 Evaluate
Evaluate
Evaluate
( void ) Description: This method evaluates the equation stored in the current Equation property. The result is returned, and used to update the Value property. Input: None Output: None Return Values: REAL8 value Remarks/Usage: None Example: None The value of the equation property. Also stored in Value.
Define
API-1505
5.50.2.3 Define
Define
( varname, equation ) Description: This method evaluates the equation stored in the current Equation property. The result is returned, and used to update the Value property. Input: STRING varname STRING equation Output: None Return Code: None Remarks/Usage: This method automatically computes the value and sets all properties for the variable. In addition, the variable is Put to the database so it is permanently retained. Example: None The variable name to create or update. Maximum 20 characters. The equation used to define the variable. Maximum 160 characters.
API-1506
DefineReal
5.50.2.4 DefineReal
DefineReal
( varname, value ) Description: This method defines a variable and its associated real number. Input: STRING varname REAL8 value Output: None Return Code: None Remarks/Usage: None Example: None The variable name to create or update. Maximum 20 characters. The value to assigned to the variable.
API-1507
5.51 View Objects
View objects correspond to the views in your model. They are derived from Entity objects, so in addition to the properties and methods described here, all of the properties and methods defined for Entity objects are also available for View objects. For more information, see Section 5.1, "Common Entity Properties and Methods". Use the feView method of the FEMAP Application object to create View objects.
Description View title (maximum 79 characters). Drawing style: 0=Draw, 1=Feature, 2=Quick Hide, 3=Hide, 4=Free Edge, 5=Free Face, 6=XYvsID, 7=XYvsSET, 8=XYvsVALUE, 9=XYvsPOSITION, 10=XY of Function. Deformed style: 0=Off, 1=Deformed, 2=Animate, 3=Animate MultiCase, 4=Arrow. Contour style: 0=Off, 1=Contour, 2=Criteria, 3=Beam Diagram, 4=IsoSurface, 5=Section Cut, 6=Contour Vector. True if in Render mode. True if undeformed animation. Constraint SetID, or -1 for active. Load SetID, or -1 for active. Group SetID, -1 for active group, -2 for mutliple groups. ID of Group containing Elements to be used for various contour style displays. -1 for active. Output Set ID for post. Final Output Set ID for multicase animation. Output Set increment for multicase animation. Output Vector ID for deformation. Output Vector ID for contour. Output Set IDs for each curve.
INT4 Deformed INT4 Contour BOOL Render BOOL UndefAnimation INT4 BC INT4 Load INT4 Group INT4 ContourGroup INT4 OutputSet INT4 FinalOutputSet INT4 OutputSetInc INT4 DeformData INT4 ContourData INT4 XYOutputSet[0..8] or VARIANT vXYOutputSet
API-1508
Property INT4 XYSetRange[0..1] or VARIANT vXYSetRange INT4 XYOutputData[0..8] or VARIANT vXYOutputData INT4 XYOutputEntity[0..8] or VARIANT vXYOutputEntity INT4 Function[0..8] or VARIANT vFunction REAL8 Rotation[0..2] or VARIANT vRotation REAL8 PrevRotation[0..2] or VARIANT vPrevRotation REAL8 Center[0..2] or VARIANT vCenter REAL8 Magnification REAL8 Aspect BOOL RotationCenterOn REAL8 RotationCenter[0..2] or VARIANT vRotationCenter REAL8 RotationVector[0..2] or VARIANT vRotationVector REAL8 PrevCenter[0..2] or VARIANT vPrevCenter REAL8 PrevMagnification BOOL ShowAllLayers BOOL WindowTitleBar INT4 WindowBorder Output Vector IDs for XY curves. Description
Rotation angles
Location of view center. Magnification factor (1=AutoScale). View aspect ratio. Flag to use rotation center for dynamic rotation. Center of rotation for dynamic rotation.
Previous center location. Previous magnification factor. Flag to display all layers. Flag to indicate title bar is on. Border mode.
API-1509
Property BOOL WindowEraseBack INT4 WindowBackColor BOOL WindowShadeBack Description True if background should be erased. Background Color ID. True if background should be shaded using second background color. 0=Vertical, 1=Horizontal, 2=Diagonal Up, 3=Diagonal Down, 4=Square Spot, 5=Circular Spot, 6=Horizon, 7=Bitmap, 8=Stretched Bitmap Second Background Color ID - only used in render with WindowShadeBack=True. Third Background Color ID - only used in render with WindowShadeBack=True and WindowShadeBackOpt=6 The location of the background horizon in percent of screen height. If True, and a logo bitmap is defined, it will be shown in this view The location of the logo bitmap if it is shown in the view. In percent of screen.
INT4 WindowShadeBackOpt
INT4 WindowBackColor2 INT4 WindowBackColor3 INT4 WindowShadeHorizon BOOL WindowLogo REAL8 LogoLocation[0..2] or VARIANT vLogoLocation REAL8 PrevWindowLeft REAL8 PrevWindowTop REAL8 PrevWindowRight REAL8 PrevWindowBottom REAL8 PrevWindowXmin REAL8 PrevWindowXmax REAL8 PrevWindowYmin REAL8 PrevWindowYmax BOOL Draw[0..89] or VARIANT vDraw INT4 Label[0..89] or VARIANT vLabel INT4 ColorMode[0..89] or VARIANT vColorMode
API-1510
Property INT4 Color[0..89] or VARIANT vColor REAL8 PerspectiveDist REAL8 InterOccularDist REAL8 SpotlightDist REAL8 SpotlightDir[0..2] or VARIANT vSpotlightDir REAL8 ShrinkFactor REAL8 CurveError REAL8 AmbientLight REAL8 Light[0..2] or VARIANT vLight REAL8 AxisLocation[0..1] or VARIANT vAxisLocation REAL8 ArrowsToLabel INT4 SurfaceDivisions REAL8 LoadVecLength REAL8 OtherVecLength REAL8 LoadVectorMinScale REAL8 RenderPushForward REAL8 RenderPushUnit REAL8 RenderPushUndeformed INT4 RenderPushLabel REAL8 DeformedRelScale REAL8 DeformedAbsScale INT4 AnimationFrames Element shrink factor. Obsolete - use Global Info_FacetXXX properties Ambient light value. Location of light source. Description View Option View Color. Perspective distance. Perspective separation. Spotlight distance.
Location of screen axes. Percent of post arrows to label. Obsolete - use surface facetting Length of load vectors. Length of other vectors Load vector minimum scale factor. Controls edge offset of filled entities such as surfaces and elements at an angle to the screen (25 to 150) Controls edge offset of filled entities such as surfaces and elements perpendicular to normal (25 to 150) Controls the screen normal offset of the undeformed model with respect to the deformed model (-100 to 100) Controls the screen normal offset of labels. The value is a multiple of the font height (0-10) Deformed relative scale factor. Deformed absolute scale factor. Number of animation frames.
API-1511
Property INT4 AnimationDelay INT4 UserContourLevel[0..11] or VARIANT vUserContourLevel REAL8 UserContourValue[0..11] or VARIANT vUserContourValue INT4 UserContourCount INT4 ContourLabelFreq INT4 ContourLegendFreq INT4 ContourLabelDigits INT4 ContourLegendDigits INT4 ContourColor[0..5] or VARIANT vContourColor REAL8 CriteriaMax REAL8 CriteriaMin BOOL ContourElemUnaveraged BOOL ContourElemBreakProp BOOL ContourElemBreakMatl BOOL ContourElemBreakLayer BOOL ContourElemBreakColor BOOL ContourElemBreakGeom REAL8 ContourElemBreakAngle REAL8 XYXmin REAL8 XYXmax REAL8 XYymin REAL8 XYymax REAL8 XYScale[0..8] or VARIANT vXYScale Animation delay factor. Use User Defined contours. Description
Contour level value. Number of user defined levels. Contour labelling frequenc.y Contour legend labelling frequency. Number of digits on contour labels. Number of digits on contour legend. Contour Base Colors Upper criteria limit. Lower criteria limit. Show unaveraged element contours. Dont average across properties. Dont average across materials. Dont average across layers. Dont average across colors. Dont average across discontinuous geometry. Geometry break angle. XY X axis range.
XY Y aAxis range.
API-1512
Property STRING XYTitle STRING XYSubtitle INT4 XYCSys INT4 XYDirection INT4 XYXTics INT4 XYYTics BOOL SectionPlaneMode BOOL Section1On BOOL Section2On BOOL Section3On REAL8 SectionBase[0..2] or VARIANT vSectionBase REAL8 SectionNormal[0..2] or VARIANT vSectionNormal REAL8 Section2Base[0..2] or VARIANT vSection2Base REAL8 Section2Normal[0..2] or VARIANT vSection2Normal REAL8 Section3Base[0..2] or VARIANT vSection3Base REAL8 Section3Normal[0..2] or VARIANT vSection3Normal REAL8 SectionSpacing INT4 SectionCount BOOL SectionMode REAL8 IsosurfaceValue INT4 TraceOpt Description XY plot titles (maximum 79 characters). CSys for XY vs Position. Direction for XY vs Position. Number of tics along X axis. Number of tics along Y axis. The mode for section displays - True for Multiple Section mode, false otherwise. True if Section plane 1 is on in Multiple Section mode True if Section plane 2 is on in Multiple Section mode True if Section plane 3 is on in Multiple Section mode Origin for first cut plane.
Vector normal for third cut plane. Spacing between cut planes. Number of Cutting Planes. Section cut mode. Single iso-surface value. Trace option.
API-1513
Property INT4 TraceID BOOL ContourVecHide INT4 ContourVecMode INT4 ContourVecID1[0..2] or VARIANT vContourVecID1 INT4 ContourVecID2[0..2] or VARIANT vContourVecID2 INT4 ContourVecID3[0..2] or VARIANT vContourVecID3 INT4 ContourVecCSys REAL8 ContourVecDir[0..2] or VARIANT vContourVecDir INT4 ContourVecAddl INT4 ContourVecColor2 INT4 ContourVecColor3 INT4 ContourVecDigits INT4 ContourVecLength BOOL FreebodyOn BOOL FreebodyLoad[0..5] or VARIANT vFreebodyLoad INT4 FreebodyGroup BOOL FreebodyForceMom[0..1] or VARIANT vFreebodyForceMom BOOL FreebodyShowInternal BOOL FreebodyShowSum BOOL FreebodyMinVecFlag BOOL FreebodyComponents Description ID of output vector for trace plots. True if contour vectors should be included in hidden line calculation. Contour vector output relative to mode. IDs of output vectors for contour vector.
IDs of output vectors for third contour vector. Contour vector CSys. Components of contour vector direction. Additional contour vector output ID. Color for second contour vector. Color for third contour vector. Number of digits in contour vector labels Length of contour vectors Flag indicating freebody is on. Flags for load types for freebody. ID of group to be used in freebody. Show forces[0] and moments[1]. Show internal freebody data. Show summed data at each node. Show vectors with a minimum length. Show vector components.
API-1514
Property BOOL FreebodyXYZ[0..2] or VARIANT vFreebodyXYZ BOOL FreebodyScaleMag BOOL FreebodyShowResultant BOOL FreebodyEntityColor INT4 FreebodyShowCSys REAL8 FreebodyShowMag REAL8 FreebodyShowLength[0..1] or VARIANT vFreebodyShowLength REAL8 FreebodyResultantLoc[0..2] or VARIANT vFreebodyResultantLoc INT4 FreebodyResultantColor INT4 StreamLineOpt INT4 StreamLineID INT4 StreamLineRungeKuttaOrder REAL8 StreamLineTolerance Description Flags for X,Y,Z components. Scale vectors based on their magnitude. Show resultant of summed freebody info. Show freebody with entity colors. CSys ID for freebody display. Minimum magnitude vector to show. Min/Max display length.
Location for resultant vector. Color for resultant vector. Determines what location(s) are used to initiate streamlines (0 uses vStreamLineLocation, 1 uses StreamLineID as a point ID, 2 uses StreamLineID as a group ID) ID of a point or group of points used to initiate a streamline Controls accuracy of streamline solution the higher the value, the more accurate and slower the solution (1 to 4) Controls accuracy of streamline solution the lower the value, the more accurate and slower the solution (1e-15 to 1) This is a multiplier times the model diameter if the streamline is too long, calculation is terminated (1e-15 upwards) This is a percentage of the maximum speed if the speed gets too low, calculation is terminated (1e-15 to 100) Not Used XYZ location of start point of streamline if StreamLineOpt = 0 Contour legend is shrunk to this percentage to avoid overlap with view legend, post title and logo bitmap Transparency percentage applied to all entities (0=opaque,100=fully transparent)
REAL8 StreamLineMaxLenFactor
REAL8 StreamLineMinSpeedPct REAL8 StreamLineMaxTime REAL8 StreamLineLocation[0..2] or VARIANT vStreamLineLocation REAL8 ContourLegendShrinkPct INT4 TransparencyPercent
API-1515
Property BOOL RotateAroundModelAxes BOOL RotateSingleAxis BOOL RotateUseAxis INT4 RotateCSys INT4 UserContourPalette[0..63] or VARIANT vUserContourPalette INT4 MaxUserContourPalette Description If True, dynamic rotations are around the model axes. If False, screen axes. (used if RotateUseAxis is true) If True, dynamic rotations are around a single axis based on the predominant direction. (used if RotateUseAxis is true) If True, single and model axis dynamic rotation is available. The ID of the Coordinate System used for rotations by the View Rotate command. Colors for user contour palette. Number of colors stored in UserContour Palette. Controls destination of transformed deformation data 0 = None 1 = Coordinate System given in TransformDeformCSys 2 = Nodal Output Coordinate System Destination coordinate system when TransformDeformMode = 1 Control which components of the transformed deformation are displayed Controls contour/criteria destination coordinate system for transformed nodal output vectors 0 = None 1 = Coordinate System given in TransformNodalCSys 2 = Nodal Output Coordinate System Destination coordinate system when TransformNodalMode = 1 Controls contour/criteria destination for transformed plate element output vectors 0 = None 3 = Material Coordinate System 4 = Vector defined by axis TransformPlateDOF of Coordinate System TransformPlateCSys projected onto plate 5 = Vector defined by TransformPlateVector projected onto plate Destination coordinate system when TransformPlateMode = 4 Axis of destination coordinate system when TransformPlateMode = 4
INT4 TransformDeformMode
INT4 TransformNodalMode
INT4 TransformNodalCSys
INT4 TransformPlateMode
API-1516
Property INT4 TransformPlateVector[0..2] or VARIANT vTransformPlateVector Description Vector used when TransformPlateMode = 5 Controls contour/criteria destination coordinate system for transformed solid element output vectors 0 = None 6 = Coordinate System given in TransformSolidCSys 7 = Material Coordinate System Destination coordinate system when TransformSolidMode = 4 For laminate results, the global ply location to display for contour/criteria displays: 0=Location of Selected Output Vector, -1=Top Ply, -2=Bottom Ply, any other positive number is the ID of the Global Ply to display. Not used unless laminate results are selected. The NodeID to deform/animate around. You must also set the label value for this to be used. The scale factor for beam diagrams The coordinates of a point on the clipping plane
INT4 TransformSolidMode
INT4 TransformSolidCSys
INT4 GlobalPlyLocation
INT4 DeformRelativeToNode REAL8 BeamDiagramScale REAL8 ClipPlaneOrigin[0..2] or VARIANT vClipPlaneOrigin REAL8 ClipPlaneNormal[0..2] or VARIANT vClipPlaneNormal
API-1517
5.51.1.1 View Option Types
All of the the View Option properties (Draw, Label, Color, ColorMode) require an index to access the desired values. The following table maps the index to the names in the View Options command. Text in View Options Labels, Entities and Colors Label Parameters Coordinate System Point Curve Combined Curve Curve - Mesh Size Surface Volume Text Boundary Node Node - Perm Constraint Element Element - Directions Element - Offsets/Releases Element - Orientation/Shape Element - Beam Y-Axis Element - Coordinate System Element - Weld Element - Rigid Load Vectors Load Body Load Force Load Moment and Torque Load Temperature 0 1 2 3 95 24 4 5 6 27 7 8 9 10 11 12 13 96 90 94 78 100 14 15 16 FVI_LABEL FVI_CSYS Index Constant
FVI_POINT FVI_CURVE
FVI_COMPOSITE_CURVE
FVI_CURVE_MESHSIZE FVI_SURFACE FVI_VOLUME FVI_TEXT FVI_BOUNDARY FVI_NODE FVI_NODE_PERMCONSTRAINT FVI_ELEMENT FVI_ELEMENT_DIRECTION FVI_ELEMENT_OFFSET FVI_ELEMENT_ORIENT FVI_BEAM_YAXIS
FVI_ELEM_CSYS
FVI_ELEMENT_WELD
FVI_RIGID
FVI_LOAD_VECTORS
FVI_LOAD_BODY
API-1518
Text in View Options Load Distributed Load Pressure Load Acceleration Load Velocity Load Enforced Displacement Load Nonlinear Force Load Heat Generation Load Heat Flux Load Convection Load Radiation Load Bolt Preload Load Fluid Tracking Load Unknown Condition Load Slip Wall Condition Load Fan Curve Load Periodic Condition Constraint Constraint Equation Connector Connection Region Combined - Eliminated Points Combined - Eliminated Curves Combined - Eliminated Surfaces Tools and View Style Free Edge and Face Shrink Elements Fill, Backfaces and Hidden Filled Edges 22 23 25 26 Index 71 17 18 72 19 73 66 67 68 69 93 81 82 83 84 85 20 21 79 91 99 97 98 Constant
FVI_LOAD_DISTRIBUTEDLOAD FVI_LOAD_PRESSURE FVI_LOAD_ACCELERATION FVI_LOAD_VELOCITY FVI_LOAD_ENFORCEDDISP FVI_LOAD_NONLINEARFORCE FVI_LOAD_HEATGEN FVI_LOAD_HEATFLUX FVI_LOAD_CONVECTION FVI_LOAD_RADIATION FVI_BOLT_PRELOAD FVI_LOAD_FLUIDTRACKING FVI_LOAD_UNKNOWN FVI_LOAD_SLIPWALL FVI_LOAD_FANCURVE FVI_LOAD_PERIODIC FVI_CONSTRAINT FVI_CONSTRAINT_EQUATION FVI_CONNECTOR FVI_CONNECTION_REGION
FVI_INTERIOR_POINT FVI_INTERIOR_CURVE FVI_INTERIOR_SURFACE
API-1519
Text in View Options Render Options Transparency Shading Perspective Stereo Axisymmetric Axis View Legend View Axes Origin Workplane and Rulers Workplane Grid Clipping Planes Symbols View Aspect Ratio Curve and Surface Accuracy PostProcessing Post Titles Deformed Style Vector Style Animated Style Deformed Model Undeformed Model Trace Style Contour Type Contour/Criteria Style Contour/Criteria Levels Contour/Criteria Legend Criteria Limits 40 41 42 43 44 45 74 80 46 47 48 49 Index 77 92 28 29 30 87 31 32 33 34 35 36 37 38 39 Constant
FVI_RENDER_OPTIONS FVI_TRANSPARENCY FVI_SHADING FVI_PERSPECTIVE FVI_STEREO FVI_AXISYM_AXIS FVI_VIEW_LEGEND FVI_VIEW_AXES FVI_ORIGIN FVI_WORKPLANE FVI_WORKPLANE_GRID FVI_CLIPPING_PLANE FVI_SYMBOL FVI_ASPECT_RATIO FVI_CURVE_ACCURACY FVI_POST_TITLES FVI_DEFORMED_STYLE FVI_VECTOR_STYLE FVI_ANIMATED_STYLE FVI_DEFORMED FVI_UNDEFORMED FVI_TRACE_STYLE FVI_CONTOUR_TYPE FVI_CONTOUR_STYLE FVI_CONTOUR_LEVELS FVI_CONTOUR_LEGEND FVI_CRITERIA_LIMITS
API-1520
Text in View Options Criteria - Elements that Pass Criteria - Elements that Fail Beam Diagram IsoSurface IsoLine Streamline Contour Vector Style XY Titles XY Legend XY Axes Style XY X Range/Grid XY Y Range/Grid XY Curve 1 XY Curve 2 XY Curve 3 XY Curve 4 XY Curve 5 XY Curve 6 XY Curve 7 XY Curve 8 XY Curve 9 Index 50 51 86 76 88 89 75 52 53 54 55 56 57 58 59 60 61 62 63 64 65 Constant
FVI_CRITERIA_PASS FVI_CRITERIA_FAIL FVI_BEAM_DIAGRAM FVI_ISOSURFACE FVI_ISOLINE FVI_STREAMLINE FVI_CONTOUR_VECTOR FVI_XY_TITLES FVI_XY_LEGEND FVI_XY_AXES_STYLE FVI_XY_XAXIS FVI_XY_YAXIS FVI_XY_CURVE1 FVI_XY_CURVE2 FVI_XY_CURVE3 FVI_XY_CURVE4 FVI_XY_CURVE5 FVI_XY_CURVE6 FVI_XY_CURVE7 FVI_XY_CURVE8 FVI_XY_CURVE9
Initialize
API-1521
Initialize
( void ) Description: This initializes a view object to the default settings. Input: None Output: None Return Code: None Remarks/Usage: View Objects have many properties, and it is difficult and time consuming to initialize them all individually. This method initializes the object just like creating a new view in FEMAP with the default view settings. You can then selectively modify just the properties that you need. Example: None
API-1522
GetMultiGroupList
5.51.2.2 GetMultiGroupList
GetMultiGroupList
( nGroups, nGroupID ) Description: This method retrieves the group ids used in the current view for the Multi Group Display. Input: None Output: INT4 nGroups INT4 nGroupID[0..nGroups-1] Return Code: FE_NO_MEMORY FE_NOT_AVAILABLE Remarks/Usage: None Example: None Unable to allocate memory for group list. No groups have be referenced in the Multi Group Display. Number of groups in nGroupID The group ids that have been referenced in Multi Group display
SetMultiGroupList
API-1523
5.51.2.3 SetMultiGroupList
SetMultiGroupList
( bClear, nGroups, nGroupID ) Description: This method sets the group ids to be used in the current view for the Multi Group Display. Input: INT4 bClear INT4 nGroups INT4 nGroupID[0..nGroups-1] Output: None Return Code: None Remarks/Usage: If True then clear the list of groups in the multi group display before adding groups in nGroupID. Number of groups in nGroupID The group ids to used in the Multi Group display
Example: None
API-1524
ClearMultiGroupList
5.51.2.4 ClearMultiGroupList
ClearMultiGroupList
( void ) Description: This method clear the groups in the Multi Group Display. Input: None Output: None Return Code: None Remarks/Usage:
Example: None
Visible
API-1525
5.51.2.5 Visible
Visible
( visible ) Description: This makes a view visible on the screen, or removes it from the screen. Input: BOOL visible Output: None Return Code: FE_FAIL Remarks/Usage: This method accomplishes the same task as the View, Activate command. Example: None The operation failed. Either you asked to make a view visible that was already visible, or to remove a view that was not visible. Set to True to make a view visible, False to remove it.
API-1526
5.51.2.6 Redraw
Redraw
Redraw
( void ) Description: Redraws the current view. Input: None Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view that is visible on the screen. Same as the View, Redraw command. Example: None
Regenerate
API-1527
5.51.2.7 Regenerate
Regenerate
( void ) Description: Regenerates the current view. Input: None Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view that is visible on the screen. Same as the View, Regenerate command. Example: None
API-1528
IsLayerVisible
5.51.2.8 IsLayerVisible
IsLayerVisible
( layerID ) Description: Indicates whether the selected layer is in the visible layer list. Input: INT4 layerID Output: None Return Code: FE_FAIL Remarks/Usage: The current object must be loaded with a view that is visible on the screen. This command does not tell whether the visible layer list is actually being used. If you are displaying all layers, layers that are not in the visible layer list will still be reported as not visible, even though they are because the list is not used. Example: None Selected layer is not in the visible layer list (FE_OK means layer is in the visible layer list). ID of layer to check.
SetLayerVisible
API-1529
5.51.2.9 SetLayerVisible
SetLayerVisible
( layerID, visible ) Description: Adds or removes layers from the visible layer list. Input: INT4 layerID BOOL visible Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view that is visible on the screen. In addition to this command, you must also change the ShowAllLayers property to make sure that the visible layer list is being used (instead of all layers). Example: None ID of layer to modify. Set to True to make the layer visible, False to remove it from the visible list.
API-1530
5.51.2.10 Rotate
Rotate
Rotate
( oX, oY, oZ, dX, dY, dZ, angle ) Description: Rotates the current view around the specified axis. Input: REAL8 oX REAL8 oY REAL8 oZ REAL8 dX REAL8 dY REAL8 dZ REAL8 angle Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view from your model. This command simply updates the view object. To update the display in FEMAP, the view must be Put to the database, and then you must Redraw. Example: None The angle of rotation, in degrees. The components of the axis of rotation. The origin of the axis of rotation - in global rectangular coordinates.
AlignCSys
API-1531
5.51.2.11 AlignCSys
AlignCSys
( csysID ) Description: Rotates the current view to be aligned with the XY plane of the selected coordinate system. Input: INT4 csysID Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view from your model. This command simply updates the view object. To update the display in FEMAP, the view must be Put to the database, and then you must Redraw. Example: None The ID of the coordinate system used for alignment.
API-1532
AlignVector
5.51.2.12 AlignVector
AlignVector
( oX, oY, oZ, dX, dY, dZ ) Description: Rotates the current view to be aligned looking along the specified vector. Input: REAL8 oX REAL8 oY REAL8 oZ REAL8 dX REAL8 dY REAL8 dZ Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view from your model. This command simply updates the view object. To update the display in FEMAP, the view must be put to the database, and then you must Redraw. Example: None The components of the axis of alignment. The origin of the alignment axis - in global rectangular coordinates.
Align2Vector
API-1533
5.51.2.13 Align2Vector
Align2Vector
( vZx, vZy, vZz, vXYx, vXYy, vXYz, bAutoXY ) Description: Rotates the current view to be aligned looking along the specified vector. Input: REAL8 vZx REAL8 vZy REAL8 vZz REAL8 vXYx REAL8 vXYy REAL8 vXYz BOOL bAutoXY Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view from your model. This command simply updates the view object. To update the display in FEMAP, the view must be put to the database, and then you must Redraw. Example: None The components of a vector used to determine the X and Y (in screen) axes. The normal vector (vZx,vZy,vZz) is crossed with this vector to determine the Y vector, which is then crossed again to determine X. If True, the X and Y vectors are swapped so that the model better fits into the window shape. The components of the axis of alignment (normal to the screen)
API-1534
AlignWorkplane
5.51.2.14 AlignWorkplane
AlignWorkplane
( void ) Description: Rotates the current view to be aligned with the normal to the workplane. Input: None Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view from your model. This command simply updates the view object. To update the display in FEMAP, the View must be Put to the database, and then you must Redraw. Example: None
AutoscaleAll
API-1535
5.51.2.15 AutoscaleAll
AutoscaleAll
( redoBox ) Description: Changes the magnification so that the current model is scaled to fit in the view. Input: BOOL redoBox Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view from your model. This command simply updates the view object. To update the display in FEMAP, the View must be Put to the database, and then you must Redraw. Example: None If set to True, then the imaginary box around the model that is used for autoscaling is recomputed. If set to False, the existing box is used.
API-1536
AutoscaleVisible
5.51.2.16 AutoscaleVisible
AutoscaleVisible
( redoBox ) Description: Changes the magnification so that the visible portions of the model are scaled to fit in the view. Input: BOOL redoBox Output: None Return Code: None Remarks/Usage: The current object must be loaded with a view from your model that is currently visible in a window. This method differs from AutoscaleAll in that the current group, layers and display options are considered when scaling the view. This command simply updates the view object. To update the display in FEMAP, the View must be Put to the database, and then you must Redraw. Example: None If set to True, then the imaginary box around the model that is used for autoscaling is recomputed. If set to False, the existing box is used.
API-1537
6. FEMAP Events
Events provide a way for your application to be notified when certain operations are happening in the FEMAP session. For example, by processing events, you will be notified when a new model is opened, a command is processed or FEMAP is shut down, and your program can then respond appropriately to that event.
terAddInPane method (see Section 3.16.5.2, "feAppRegisterAddInPane"). Event messages are only sent to applications that are registered as add-ins. When calling this method, you should specify the handle to the window that contains the message loop that will process the events.
2. Call the Windows API function RegisterWindowMessage to obtain the message identifier for the
You must register the FE_EVENT_MESSAGE string to select the proper message.
3. Modify your window procedure to process the event messages that FEMAP sends. The format
of these messages is described later in this section. You do not have to process any particular messages. Only process the messages that you need for your application. One important thing to note is that FEMAP simply sends the event messages to your application. FEMAP is not waiting for a response from you; it will go on processing whatever other commands or actions are requested.
API-1538
6.3 Format of Event Messages
All windows messages contain four parameters. Parameter hWnd message Description The handle to the window where the message is being sent. Not really very important in this case. The message type. This parameter will always be equal to the return value from RegisterWindowMessage( FE_EVENT_MESSAGE ) for event messages. This is how you will be able to distinguish a FEMAP event message from other windows messages coming to your window. For FEMAP event messages, this parameter indicates the type of event that has occurred. Refer to the various events for more information. For FEMAP event messages, this parameter contains additional data for that event. Refer to the various events for more information.
wParam lParam
In general, you will want to modify your message loop to check to see if message is equal to the FEMAP event message value. If it is, you will then check wParam, and possibly lParam, to see if this is an event that is important. If it is not important, simply ignore the message. If it is important, start the appropriate action in your application.
wParam 1 2 3 4 5
Description FEMAP is initializing for the first time. lParam is not used. Starting a new model, or opening an existing model. Any previous model that was in use has now been closed. lParam is not used. Closing the current model. lParam is not used. FEMAP is being shut down. The model that was in use has been closed. lParam is not used. A command has been executed - either from the menu, or thru some other mechanism. lParam is the command number that was executed. Indicates that a program file is starting execution. lParam is not used. Indicates that a program file is ending execution. lParam is not used.
6 7
FEVENT_PROGSTART FEVENT_PROGEND
API-1539
wParam 8 Event FEVENT_DRAWSTART Description Indicates that a redraw or regenerate is beginning. Neither this nor the FEVENT_DRAWEND event are issued every time a view is updated - they are only issued if a standard Redraw or Regenerate command are selected from the menu or the API, or when some other action or command triggers a full redraw or regenerate. Indicates that a redraw or regenerate is ending. Indicates that an analysis that FEMAP was monitoring has been completed Indicates that the automatic loading of results after an analysis finishes has completed. Indicates that the active model has been switched to a different model. lParam contains an identifier of the new active model - the same value that is returned by feAppGetModel()
9 10 11 12
When processing the FEVENT_COMMAND event, you will need to know the command number that you are looking for. Although we do not publish these command numbers, it is easy to find them. Simply process the FEVENT_COMMAND event, run your application, switch to FEMAP and execute the command that you want to process. Remember the value of lParam that you receive with the FEVENT_COMMAND event that you receive. It will be the same each time you perform that command. Several examples are as follows:
Command View, Redraw View, Regenerate Tools, Undo Tools, Redo File, Save File, Open File, Exit
API-1540
Global Global Global Global Global Const Const Const Const Const FEVENT_ENDMODEL FEVENT_SHUTDOWN FEVENT_COMMAND FEVENT_PROGSTART FEVENT_PROGEND = = = = = 3 4 5 6 7
Dim WM_FEMAP_MESSAGE As Long Dim PreviousWindowProc As Long Dim hMainForm As Long Dim hMainWnd As Long Public femap As Object Const GWL_WNDPROC Const GWL_HWNDPARENT = (-4&) = (-8)
Public Declare Function RegisterWindowMessage Lib "user32" _ Alias "RegisterWindowMessageA" (ByVal lpString As String) As Long Public Declare Function SetWindowLong Lib "user32" _ Alias "SetWindowLongA" (ByVal hwnd As Long, _ ByVal nIndex As Long, ByVal dwNewLong As Long) _ As Long Public Declare Function CallWindowProc Lib "user32" _ Alias "CallWindowProcA" _ (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, _ ByVal wParam As Long, ByVal lParam As Long) As Long This function is the Window procedure that you must supply to override the default message handling Public Function WindowProc(ByVal hwnd As Long, _ ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) _ As Long Dim rc As Long If uMsg = WM_FEMAP_MESSAGE Then If wParam = FEVENT_SHUTDOWN Then Unload Form1 End If If wParam = FEVENT_COMMAND Then 'MsgBox ("Femap Command") End If If wParam = FEVENT_PROGSTART Then MsgBox ("Program Start") End If If wParam = FEVENT_PROGEND Then
API-1541
MsgBox ("Program End") End If Else WindowProc = CallWindowProc(PreviousWindowProc, hwnd, uMsg, _ wParam, lParam) End If End Function This function is called to initialize capturing the events Public Function InitApp() Dim rc As Long hMainForm = Form1.hwnd Set femap = GetObject(, "femap.model") For more control over window placement and style use feAppRegisterAddInPane( ) rc = femap.feAppRegisterAddIn(True, hMainForm, hMainForm, True, 1) WM_FEMAP_MESSAGE = RegisterWindowMessage("FE_EVENT_MESSAGE") PreviousWindowProc = SetWindowLong(Form1.hwnd, GWL_WNDPROC, _ AddressOf WindowProc) End Function This function is called to terminate capture Public Function CloseApp() rc = SetWindowLong(hMainForm, GWL_WNDPROC, PreviousWindowProc) rc = femap.feAppRegisterAddIn(False, hMainForm, hMainForm, _ True, 1) End Function
API-1542
Index
Symbols
.NET 32, 35, 43
Numerics
510405 992 510406 992 510407 994 510408 994 510409 994 510410 1000 510411 1000 510412 998
A
ABAQUS file 183, 189, 204 ACIS file 160, 162 ACIS SAT file 198 Add 802, 808, 874, 1035, 1246, 1292 add solid 356 AddAll 818, 877 AddAllColor 830 AddAllExcept 819 AddAllTitle 829 AddAroundPlane 827 AddAroundPoint 825 AddAroundVector 826 AddArray 823, 1036, 1271, 1279, 1293, 1297 AddColumn 722 AddCommon 820 AddContact 1063 AddCoordinate 824 AddElementChecks 730 AddEntitiesOnLayer 810 AddEntityData 727 AddGroup 734, 822 AddInt 876 AddMassProperties 729 AddMeshAssociativity 731 AddMeshLoc 1098 AddMeshLocXYZ 1099 AddMidsideNodes 831 AddNewRemoveCommonSet 821 AddNodesOnGeometry 828 AddOutput 728 AddRange 809 AddReal 875 AddRule 813 AddSelection 741 AddSet 803, 811 AddSetRule 812 AddSort 738
AdjcacentSurfaces 1445 AdjcacentSurfacesAsSet 1446 align entities 468 Align2Vector 1533 AlignCSys 1531 AlignVector 1532 AlignWorkplane 1534 AnalysisCase object 975 methods 980 properties 975 AnalysisSet object 983 methods 1007 properties 983 Analyze 1017 AnalyzeMultiple 1018 AngleAtPoint 1477 ANSYS file 184, 190, 205 application register 652, 653, 654 application object 31, 69 methods 31 properties 31 ApproximateArea 1437 arc create from point 291 create with angle 286, 287 create with center 284, 290 create with chord 288 create with points 289 create with radius 285 ArcCircleInfo 1088 Area 1190, 1403, 1436 array 33, 36 AtEOF 754, 919 attach to geometry 476, 477, 478 attributes meshing 344 AutoComplete 1324 AutoscaleAll 1535 AutoscaleVisible 1536
B
bar offsets modify 500, 501 BCDefinition object 1022 methods 1023 properties 1022 BCEqn object 1026 methods 1026 properties 1026 BCGeom object 1027 methods 1029 properties 1027 BCNode object 1034 methods 1034
properties 1034 BCSet object 1037 methods 1038 properties 1037 beam offsets modify 500, 501 BoolField 786 boundary conditions modify 482 boundary surface create 324, 325, 326, 327 update 328 BoundarySurfaces 1443 BoundarySurfacesAsSet 1444 BoundingBox 1106, 1426, 1473 BoundingSize 1474 BSpline curves knots 484 modify 483
C
C++ 35, 65 C,C++ 31 Case 1016 CATIA file 163 CATIAV5 file 164 CG 1435 chamfer solid 355 circle create concentric 296 create from center 294, 298 create from curve 299 create from diameter 293 create from points 295, 297 create from radius 292 create tangent 300 cleanup solid 366, 367 Clear 747, 790, 841, 884, 903, 1071, 1263 ClearAll 789 ClearGroup 735 ClearMultiGroupList 1524 ClearNodeList 1178 ClearSelection 742 ClearSort 739 close file 755 close model 155 ClosestPointToSurface 1125 coincident curves 260 elements 262 loads 272 nodes 255, 257 points 258 colinear
coordinates 561 color modify 470 Color Palette 608 CombineCurves 1116 CombinedCurvesAsSet 1115 Compress 1039, 1070, 1304 Compute 1264 Compute2 1265 ComputeGeneralShape 1399 ComputeShape 1256, 1395 ComputeStdShape 1397 Conical 1457 Connection 378 Connection object 1075 methods 1076 properties 1075 Connection Property object 1047 access properties 1047 array index values 1049 methods 1056 properties 1047 Connection Region object 1058 constant global 38 constraint combine 383 constraints check 271 modify 482 Contact object 1058 methods 1060 properties 1058 convert coordinates 545, 546, 562 units 229, 230 ConvertToAllCurves 863 ConvertToAllSurfaces 867 ConvertToBoundarySurfaces 868, 897 ConvertToBoundarySurfacesOnly 869 ConvertToCombinedCurves 864 ConvertToCombinedCurvesOnly 865 ConvertToInternalCurves 866 ConvertToInternalSurfaces 870 coordinate system modify 481 move 463, 464 rotate 568, 569, 570 update 480 coordinates along curve 550 at curve center curve coordinates 552 at intersection 555, 566, 567 at line intersection 548 at midpoint 551 colinear 561 convert 546, 562
curves 547 enter 543, 544 in surface 554 node 557 point 556 project 549, 553, 564, 565 rotate 563 transform 558, 559, 560 Copy 745, 805, 858 copy 370 radial 372 Corner 1338 Count 791, 860, 891, 974 CountLoads 1276 CSys object 1080 methods 1081 properties 1080 Current 888 CurvatureAcrossEdge 1124 curve break 320 chamfer 323 create by projection 310, 311 create by slicing solid 313 create from intersection 309 create on surface 312 extend 319 fillet 322 join 321 trim 318 types 1085 Curve object 1082 methods 1086 properties 1082 CurveLoops 1448 Curves 1378, 1409, 1447 curves BSpline 483, 484 coincident 260 reverse direction 485, 486 revolve 452 sweep 454 CurvesAsSet 1379, 1410, 1449 Cylindrical 1455
Delete 915, 956 delete constraints 510 entities 507 loads 509 mesh 508 model 506 output 511 DeleteAll 859, 861, 1202, 1208, 1214, 1221, 1227 DeleteLibrary 957 DeletePly 1262 DeleteRows 748 DeleteTitle 916 detach nodes and elements 479 direction curves 485, 486 directory current 698 distortion elements 264, 266, 268, 269 docking panes 620, 621 DXF file 166
E
element rigid 54 Element object 1167 access nodes 1169 methods 1170 properties 1167 ElementFaces 1472 Elements 1103, 1424, 1469 elements attach to geometry 476, 477 beam releases 495 coincident 262 detach from geometry 479 distortion 264, 266, 268, 269 fixup 263 formulation 498 line 502 modify type 503 move 465 normals 270 reverse normals 494 sweep 453 update 496 update property 491 ElementsAsSet 1104, 1425, 1470 ElementsWithFaces 1105, 1471 embed 655, 660 solid 359, 365 Enable 1078 end of file 754 EndPoints 1087, 1452 EndPointsAsSet 1453
D
data example storing 51 data type 32 DataTable object methods 703, 707, 717, 734, 738, 741, 744 properties 702 Debug 871 Define 1505 DefineReal 1506 definition coordinate system 480 Deletable 914, 955
enter coordinates 543, 544 entity align 468 rotate 466, 467 scale 469 Entity object 944 methods 945 properties 944 entity types 118, 119 equation 233 Evaluate 1162, 1504 event 661 messages 1538 receiving and processing 1537 example using API 43 Excel example using 43, 45, 56, 58 Exist 913, 954 exit FEMAP 156 Expand 1038, 1069, 1303 explode solid 339, 340, 351 Export 1415 export ABAQUS 204 ACIS 198 ANSYS 205 FEMAP Neutral 196 IGES 199 LS-DYNA 206 MARC 207 NASTRAN 208 Parasolid 200 STEP 201 STL 202 VRML 203 extrude curves 450 elements 448 solid 349
F
Facets 1117, 1420, 1465 feAddToolbar 631 feAddToolbarCommand 642 feAddToolbarSubmenu 632 feAddToolbarSubmenuCommand 643 feAddToolbarSubmenuSubmenu 633 feAddToolbarSubmenuUserCommand 645 feAddToolbarUserCommand 644 feAddUserCommand 628 feAlignTo 468 feAppBringToTop 656 feAppColorPalette 608
feAppCountModels 615 feAppEmbed 655 feAppEmbedMessages 660 feAppEventCallback 661 feAppGetAllModels 616 feAppGetModel 611 feAppGetModelName 612 feAppLock 662 feAppLockDraw 668 feAppLockExit 664 feAppLockModel 666 feAppManagePanes 620 feAppManageStatusBar 622, 623 feAppManageToolbars 619 feAppMessage 673 feAppMessageBox 607 feAppMessageEndListing 675 feAppMessageStartListing 674 feAppModelContents 617 feAppModelDefragment 618 feAppRegisterAddIn 652 feAppRegisterAddInPane 653 feAppRegisterAddInPaneWithFrame 654 feAppSetModel 613 feAppSetModelByName 614 feAppShowWindow 658 feAppStatusRedraw 670 feAppStatusShow 671 feAppStatusUpdate 672 feAppUnlock 663 feAppUnlockDraw 669 feAppUnlockExit 665 feAppUnlockModel 667 feAppUpdateModelBox 527 feAppUpdatePanes 621 feAppVersion 682 feAppVisiblel 659 feArcAngleCenterStart 287 feArcAngleStartEnd 286 feArcCenterPoints 290 feArcCenterStartEnd 284 feArcChordCenterStart 288 feArcPoints 289 feArcRadiusStartEnd 285 feArcTangentStartEnd 291 feAutoMeshAssociativity 476 feBCCombine 383 feBoundaryAddSurfaces 327 feBoundaryFromCurves 325 feBoundaryFromPoints 324 feBoundaryFromSurfaces 326 feBoundaryUpdateSurfaces 328 feCheckCoincidentCurve 260 feCheckCoincidentElem 262 feCheckCoincidentLoads 272 feCheckCoincidentNode 255 feCheckCoincidentNode2 257 feCheckCoincidentPoint 258 feCheckConstraints 271
feCheckElemDistortion 264 feCheckElemDistortion2 266 feCheckElemFixup 263 feCheckElemNormal 270 feCheckPlanarNodes 261 feCircle2Point 295 feCircle3Point 297 feCircleCenter 294 feCircleCenterPoints 298 feCircleCenterTangent 299 feCircleConcentric 296 feCircleDiameter 293 feCircleRadius 292 feCircleTangentTangent 300 feConnectAuto 378 feConnectAuto2 378 feCoordAlongCurve 550 feCoordArrayTransform 559 feCoordArrayTransform2 560 feCoordColinear 561 feCoordCurveCenter 552 feCoordCurveMidpoint 551 feCoordFromWorkplane 545 feCoordInSurface 554 feCoordIntersectCurves 547 feCoordIntersectLines 548 feCoordOnNode 557 feCoordOnPoint 556 feCoordOntoCurve 549 feCoordOntoLine 565 feCoordOntoPlane 564 feCoordOntoSurface 553 feCoordPick 543 feCoordPickByMethod 544 feCoordPlaneIntersect 566 feCoordRotate 563 feCoordSurfaceIntersect 555 feCoordToDirCos 562 feCoordToWorkplane 546 feCoordTransform 558 feCoordVectorPlaneIntersect 567 feCurveBreak 320 feCurveChamfer 323 feCurveExtend 319 feCurveFillet 322 feCurveIntersectSolids 309 feCurveJoin 321 feCurveOffsetCurveWasher 314 feCurveParametricOnSurface 312 feCurveProjectOntoSolid 310 feCurveProjectOntoSurfaces 311 feCurveSlice 313 feCurveSplitEdgeToEdge 317 feCurveSplitPointToEdge 316 feCurveSplitPointToPoint 315 feCurveTrim 318 feCurveUpdateSurfaces 308 feDelete 507 feDeleteAll 506
feDeleteConstraints 510 feDeleteLoads 509 feDeleteMesh 508 feDeleteOutput 511 feDeleteToolbar 634 feDeleteUserCommand 629 feElementFreeEdge 540 feElementFreeFace 541 feEntityVisibility 526 feFileClose 155 feFileCurrentDirectory 698 feFileExecute 695 feFileExit 156 feFileGetName 694 feFileMessageCopy 220 feFileMessageLineNumber 223 feFileMessageSave 221 feFileMessageSelect 222 feFileNew 153 feFileOpen 154 feFilePageSetupReset 212 feFilePageSetupSave 211 feFilePictureCopy 215 feFilePictureCopy2 216 feFilePictureReplay 219 feFilePictureSave 217 feFilePictureSave2 218 feFilePreferencesReset 226 feFilePreferencesSave 225 feFilePrint 213 feFilePrint2 214 feFileProgramRun 696 feFileProgramRuning 697 feFileReadAbaqus 183 feFileReadAbaqusResults 189 feFileReadAcis 162 feFileReadAcisOpt 160 feFileReadAnsys 184 feFileReadAnsysResults 190 feFileReadCatia 163 feFileReadCatiaV5 164 feFileReadDxf 166 feFileReadDyna 185 feFileReadDynaResults 191 feFileReadIdeas 168 feFileReadIges 171 feFileReadIgesAdv 169 feFileReadMarc 186 feFileReadMarcResults 192 feFileReadNastran 187 feFileReadNastranResults 193 feFileReadNeutral 194 feFileReadNeutral2 194 feFileReadNeutral3 194 feFileReadParasolid 174 feFileReadParasolidOpt 172 feFileReadPatran 188 feFileReadProe 175 feFileReadSolidEdge 176
feFileReadStep 180 feFileReadStepOpt 177 feFileReadStl 181 feFileReadUg 182 feFileRebuild 224 feFileSaveAs 158 feFileTimedSave 159 feFileWriteAbaqus 204 feFileWriteAcis 198 feFileWriteAnsys 205 feFileWriteDyna 206 feFileWriteIges 199 feFileWriteMarc 207 feFileWriteNastran 208 feFileWriteNeutral 196 feFileWriteNeutral2 196 feFileWriteParasolid 200 feFileWriteStep 201 feFileWriteStl 202 feFileWriteVrml 203 feFormatReal 676, 677 feGenerateCopy 370 feGenerateRadialCopy 372 feGenerateReflect 375 feGenerateRotate 374 feGenerateScale 373 feGetElemDistortion 268 feGetElemDistortion2 269 feGetElementEdges 604 feGetElementFaces 603 feGetInt 606 feGetMenuCommand 638 feGetMenuCommands 637 feGetReal 605 feGetToolbarCommand 641 feGetToolbarCommands 639 feGetToolbars 630 feGetToolbarSubCommands 640 feGetUserCommands 627 feGFXDelete 688 feGFXEnableView 690 feGFXLoad 686 feGFXReset 691 feGFXSelect 689 feGroupBoolean 530 feGroupCombine 531 feGroupEvaluate 529 feGroupGenElemType 536 feGroupGenerate 532 feGroupGenMatl 535 feGroupGenProp 534 feGroupGenSolid 533 feGroupMoveToLayer 538 feGroupPeel 537 feLayerGet 235 feLayerPut 234 feLicenseExpiration 678, 681 feLicenseIsAvailable 680 feLicenseMethod 679
feLine2Tangent 281 feLineAtAngl 277 feLineHorzVert 276 feLineMidline 279 feLineParallel 278 feLinePointDs 283 feLinePoints 275 feLinePointTangent 280 feLineRectangle 282 feLoadCombine 382 feLoadToolbarLayout 651 FEMAP events 1538, 1539 FEMAP Basic Scripting 31 FEMAP Neutral file 194, 196 feMeasureAngle 246 feMeasureAngleBetweenNodes 247 feMeasureCurve 248 feMeasureDistance 242 feMeasureDistanceBetweenLines 245 feMeasureDistanceBetweenNodes 244 feMeasureDistanceToPlane 243 feMeasureMeshMassProp 251 feMeasureMeshSectionProp 254 feMeasureSolidMassProp 250 feMeasureSurfaceArea 249 feMeasureSurfSectionProp 253 feMeshApproachSurface 413 feMeshAttach 477 feMeshAttachNodes 478 feMeshAttrCurve 409 feMeshAttrPoint 408 feMeshAttrSolid 412 feMeshAttrSurface 411 feMeshBetween 429 feMeshBuildRemeshRegions 442 feMeshCleanupSlivers 440 feMeshClosestLink 431 feMeshCoincidentLink 432 feMeshConvertFacets 439 feMeshCurve 416 feMeshDetach 479 feMeshEdgeMembers 446 feMeshEdgeRemoval 441 feMeshEditRemeshRegions 443 feMeshExtrudeCurve 450 feMeshExtrudeElem 448 feMeshHexSolid 425 feMeshHexSolidFromElements 427 feMeshPoint 414 feMeshRemesh 437 feMeshRemeshRegions 444 feMeshRevolveCurve 452 feMeshRevolveElem 451 feMeshSizeCurve 402 feMeshSizePoint 401 feMeshSizeSolid 406 feMeshSizeSurface 404 feMeshSmooth 447
feMeshSurface 420 feMeshSurface2 418 feMeshSurfaceByAttributes 422 feMeshSweepCurve 454 feMeshSweepElem 453 feMeshTetSolid 423 feMeshTransition 434 feMeshUnzip 433 feModifyColor 470 feModifyDefCSys 480 feModifyElemOrder 496 feModifyElemPropID 491 feModifyElemRelease 495 feModifyElemReverse 494 feModifyElemType 503 feModifyFormulation 498 feModifyLayer 472 feModifyLoadPhase 490 feModifyMaterialAngle 493 feModifyMidside 497 feModifyOffsets 500, 501 feModifyOrient 502 feModifyOutCSys 481 feModifyPermBC 482 feModifyPropMatlID 492 feModifyReverseCurve 485, 486 feModifySolidFacetting 488 feModifySplineKnots 484 feModifySplineOrder 483 feModifySplitQuads 499 feModifySuperelementID 489 feModifySurfaceDivisions 487 feModifyTransparency 471 feMoveBy 464 feMoveOffset 465 feMoveTo 463 feNotePut 210 feNotesGet 209 feOutputCalculate 397 feOutputConvertV92VectorID 398 feOutputForceBalance 399 feOutputFromLoad 394 feOutputProcess 384 feOutputProcessConvert 390 feOutputProcessCopy 386 feOutputProcessEnvelope 391 feOutputProcessErrorEstimate 393 feOutputProcessLinearCombination 388 feOutputProcessMerge 387 feOutputProcessRSSCombination 389 feOutputTransform 395 fePlaneBisect 594 fePlaneCSys 595 fePlaneCurveNormal 597 fePlaneLocation 591 fePlaneNodes 592 fePlanePick 589 fePlanePickByMethod 590 fePlanePoints 593
fePlaneSurfaceNormal 596 fePlaneViewAlign 598 feProjectAlongVector 460 feProjectOntoCurve 457 feProjectOntoPlane 461 feProjectOntoSolid 462 feProjectOntoSurface 458 feProjectOntoVector 459 feRenumber 473 feRenumberOpt 474 feResetToolbar 635 feRotateBy 467 feRotateTo 466 feRotationFromDirCos 570 feRotationToDirCos 569 feRotationTransform 568 feRunIOTest 227 feSaveToolbarLayout 650 feScale 469 feScreenPctPick 609 feSelectOutput 600 feSetToolbarCommandBitmap 649 feSetToolbarCommandTitle 648 feSetToolbarCommandVisible 646 feSetToolbarSeparator 647 feSetToolbarVisible 636 feSolidAdd 356 feSolidChamfer 355 feSolidCleanup 366 feSolidCleanupAdvanced 367 feSolidCommon 358 feSolidEmbed 359 feSolidEmbedFace 365 feSolidExplode 339, 340, 351 feSolidExtrude 349 feSolidFillet 354 feSolidIntersect 360 feSolidPrimitives 347 feSolidRemove 357 feSolidRemoveFace 369 feSolidRevolve 350 feSolidShell 361 feSolidSlice 362 feSolidSliceAlongFace 364 feSolidSliceMatch 363 feSolidStitch 352 feSolidStitchNoCleanup 353 feSplineBlend 307 feSplineEllipse 304 feSplineHyperbola 306 feSplineParabola 305 feSplinePoints 301 feSplineTangent 303 feSurfaceAlignedCurves 331 feSurfaceConvert 338 feSurfaceCorners 329 feSurfaceEdgeCurves 330 feSurfaceExtrude 334 feSurfaceMidAttrib 344
feSurfaceMidAuto 343 feSurfaceMidSingle 342 feSurfaceNonManifoldAdd 339 feSurfaceNormalDeviation 337 feSurfaceRecoverManifold 340 feSurfaceRemoveHole 341 feSurfaceRevolve 335 feSurfaceRuled 333 feSurfaceSweep 336 feSurfaceTrimToSolid 345 feSurfaceTrimWithCurves 346 feTextGet 240 feTextMultiPut 238 feTextPut 236 feToolUnitConvert 230 feToolUnitConvertFactors 229 feVarEval 233 feVarGet 232 feVarPut 231 feVectorAngle 578 feVectorAngleAxis 579 feVectorAxis 584 feVectorAxisOfSurface 588 feVectorCrossPoduct 575 feVectorDotProduct 576 feVectorFromBeam 572 feVectorLength 574 feVectorNormalToSurface 586 feVectorNormalToView 587 feVectorPerpendicular 577 feVectorPick 582 feVectorPickByMethod 583 feVectorPlaneIntersect 580 feVectorTangentToCurve vector unit 585 feVectorToBeam 573 feVectorTransform 571 feVectorUnit 581 feViewAllViews 516 feViewCascade 520 feViewRedraw 514 feViewRegenerate 515 feViewShow 517 feViewTile 518 feViewVisible 513 feWindowCascade 520 feWindowMaximize 522 feWindowMinimize 521 feWindowRedraw 514 feWindowRestore 523 feWindowSetRect 524 feWindowShow 517 feWindowTile 518 feWindowTileHorz 519 feWindowTitle 525 feWindowVisible 513 Field 783 file
close 755 end 754 jump to location in 757, 758 new 153, 611, 612, 613, 614, 615, 616, 617, 618, 686 open 154, 752 position in 756 print 213, 214 read line from 753 save as 158 size 759 time accessed 762 time created 760 time written 761 timed save 159 filename get 694 fillet solid 354 Find 880 FindColumn 707 FindMaxMin 1370 FindRow 703 First 855, 889, 907, 962 FirstInSet 963 FixedFormat 779 fixup elements 263 Free Edge 540 Free Face 541 FreeCurvesAsSet 1411 Function object 1193 methods 1193 properties 1193
G
Get 899, 945 Get Search 1284 GetAll 1326, 1488, 1491, 1494, 1497, 1500 GetAllArray 1170, 1327 GetAllPly 1261 GetArray 862 GetCellValue 1143 GetCentroid 1181 GetClosest 1331 GetColumnInfo 708 GetColumnText 719 GetColumnTitle 713, 1146 GetColumnValue 717, 1147 GetColumnVisible 709 GetColumnWidth 711 GetCombination 1044, 1309 GetCombinedCurves 1114 GetContactList 1060 GetContactTable 981, 1014 GetCoordArray 1328 GetCorrelate 1010, 1011 GetData 879, 1163
GetDataSurf 1128 GetDataSurfInfo 1159 GetDataSurfType 1166 GetEdgeNodes 1186 GetElemWithCorner 1362 GetElemWithCornerSet 1364 GetEntities 1062 GetFaceArea 1184 GetFaceCentroid 1182 GetFaceNodes 1185 GetFaceNormal 1183 GetFromSet 1342 GetFunctionList 1194 GetGroup 736 GetLibrary 946 GetMeshLoc 1107 GetMeshLocXYZ 1108 GetMinMaxEdgeLength 1192 GetMultiGroupList 1522 GetNodeList 1176 GetOffset 1066 GetOutputList 1343 GetOutputListAtID 1344 GetOutputListAtSet 1345 GetPageInfo 1160 GetPageTitle 1152 GetPageValue 1154 GetPly 1260 GetRowInfo 704 GetRowTitle 1148 GetRowValue 1150 GetRowValues 720 GetRowVisible 705 GetScalarAtElem 1357 GetScalarAtElemSet 1358 GetScalarAtNode 1348 GetScalarAtNodeSet 1349 GetSearch 1029, 1291 GetSelected 804 GetSelection 743 GetSort 740 GetText 1008 GetTitle 900 GetTitleIDList 950 GetTitleList 949 GetValue 1196 GetVarID 1503 GetVectorAtNode 1353 GetVectorAtNodeSet 1354 GetVectorAtSingleNode 1352 GFXArrow object 1198 properties 1198 GFXLine object 1204 methods 1199, 1205 properties 1204 GFXPoint object 1210 methods 1211 properties 1210 GFXQuad4 object 1216
methods 1217 properties 1216 GFXTria3 object 1222 methods 1223 properties 1222 global boolean properties 116 global constant 38 global integer properties 110 global real properties 114 global string properties 117 GlobalPly object 1228 methods 1228 properties 1228 group boolean 530 combine 531 create 532 create based on property 534 create based on solids 533 evaluate 529 generate based on element type 536 generate based on layers of solid elements 537 generate based on materials 535 move to layer 538 selection rules 814 Group object 1229 list types 1233 methods 1234 properties 1229 range types 1231 Grow 796
H
HasCommon 850 HasFullGlobalPly 1268 HasGlobalPly 1266 HasMaterial 1267 HasPole 1478
I
I-DEAS file 168 IDs renumber 473, 474 IGES file 169, 171, 199 import ABAQUS 183, 189 ACIS 160, 162 ANSYS 184, 190 CATIA 163 CATIAV5 164 DXF 166 FEMAP Neutral 194 I-DEAS 168 IGES 169, 171 LS-DYNA 185, 191 MARC 186, 192
NASTRAN 187, 193 Parasolid 172, 174 Patran 188 ProE 175 PRT 182 SolidEdge 176 STEP 177, 180 STL 181 Inertia 1191, 1404 InitAnalysisCase 980 InitAnalysisMgr 1007 InitElemWithCorner 1360 InitScalarAtElem 1356, 1368 InitScalarAtNode 1347 InitVectorAtNode 1351 InsertPly 1257 Inside 1431 InsideXYZ 1432 interface embedded 655, 660 unlock 663, 665, 667, 669 visible 659 intersect solids 360 intersection coordinates 555, 566, 567 IntField 784 IsAdded 832, 883 IsArrayAdded 833 IsBoundingSolidRegion 1464 IsCombinedCurve 1113 IsCone 1462 IsCylinder 1460 IsEnabled 1079 IsGeneral 1419 IsLayerVisible 1528 IsNonManifold 1121, 1122 IsParabolic 1187 IsPlane 1459 IsSetAdded 834 IsSheet 1417 IsSmoothEdge 1109 IsSolid 1416 IsSphere 1461 IsStraight 1120 IsTorus 1463 IsTotalLoad 1277 IsWire 1418
L
Last 856, 890, 908, 964 layer get information 235 modify 472 update 234 Layer object 1252 methods 1252 properties 1252 Layup 1401 Layup object 1254 methods 1256 properties 1254 Length 1093, 1189 length vector 574 license 678, 679, 680, 681 line create at angle 277 create between other lines 279 create between points 275 create horizontal or vertical 276 create parallel 278 create rectangle 282, 283 create tangent to curve 280 create tangent to curves 281 line elements modify 502 LineInit 777 List 1234 listing 674, 675 load combine 382 LoadBolt object 1270 methods 1270 properties 1270 LoadDefinition object 1272 methods 1273 properties 1272 LoadETemp object 1278 methods 1278 properties 1278 LoadGeom object 1280 load types 1285 methods 1284 properties 1280 LoadGroup 800 LoadMesh object 1287 load types 1295 methods 1291 properties 1287 LoadNTemp object 1296 methods 1296 properties 1296 loads
J
Jump 918 jump to file location 757, 758
K
knots
coincident 272 LoadGeom types 1285 LoadMesh types 1295 update phase 490 LoadSet object 1298 methods 1303 properties 1298 Lock 744 lock interface interface lock 662, 664, 666, 668 LS-DYNA file 185, 191, 206
M
MapFromModelToSet 1313, 1316 MapOutput object 1312 properties 1312 MARC file 186, 192, 207 MassProp 1414 Match 857 Material 1400 material access properties 1320 array index values 1320 update 492 material angle update 493 Material object 1318 methods 1324 properties 1318 Matl 1180 maximize window 658 MaxNormalDeviation 1476 measure angle 246, 247 curve 248 distance between lines 245 distance between nodes 244 mesh mass properties 251 solid mass properties 250 surface area 249 measure distance 242 measure distance to plane 243 memory allocating 37 Mesh 1482 mesh approach on surfaces 413 attributes on curves 409 attributes on points 408 attributes on solids 412 attributes on surfaces 411 between locations 429 between nodes 431, 432 build remeshing regions 442
change remeshing regions 443, 444 cleanup slivers 440 convert facets 439 extrude curves 450 extrude elements 448 from elements 427 from points 414 generate on free edges or faces 446 on curves 416 on solids 423, 425 on surfaces 418, 420 project 462 remesh 437 remove edge 441 revolve curves 452 revolve elements 451 size 401 size on curves 402 size on solid 406 size on surfaces 404 sizes on points 401 smooth 447 surface 422 sweep curves 454 transition 434 unzip 433 meshing attributes 344 MeshParam 1096 message copy 220 save 221 select 222 write 673, 674, 675 MessageBox 607 midside nodes update 497 midsurface create 342, 343 minimize window 658 MinRadiiOfCurvature 1479 model 69 modify color 470 constraints 482 coordinate systems 481 element offsets 500, 501 element type 503 layers 472 line elements 502 node superelementID 489 quadrilateral element 499 solid facetting 488 surfaces 487 transparency 471 move elements 465 nodes, points, coordinate systems 463, 464 MsgBox 607
multi-dimensional 36
N
NASTRAN file 187, 193, 208 new file 153, 611, 612, 613, 614, 615, 616, 617, 618, 686 Next 853, 886, 905, 959 NextBC 1025, 1041 NextBCDef 1043 NextEmptyID 971 NextEmptySet 911, 967 NextID 854, 969 NextInSet 960 NextLoad 1275, 1306 NextLoadDef 1308 NextSet 909, 965 node coordinates 557 modify 489 Node object 1325 methods 1326 properties 1325 Nodes 1100, 1375, 1421, 1466 nodes access 1169 attach to geometry 476, 477, 478 coincident 255, 257 detach from geometry 479 move 463, 464 planar 261 project 457, 458, 459, 460, 461 to define plane 592 update midside 497 NodesAsSet 1102, 1377, 1423, 1468 Normal 1112, 1439 NormalAtXYZ 1440 NormalBox 1475 normals elements 270 reverse 494 notes get 209 put 210
O
object AnalysisCase 975 AnalysisSet 983 application 31, 69 BCDefinition 1022 BCEqn 1026 BCGeom 1027 BCNode 1034 BCSet 1037 Connection 1075 Connection Property 1047
Connection Region 1058 Contact 1058 creating 939 CSys 1080 curves 1082 destroying 942 Element 1167 Entity 944 Function 1193 GFXArrow 1198 GFXLine 1204 GFXPoint 1210 GFXQuad4 1216 GFXTria3 1222 GlobalPly 1228 Group 1229 Layer 1252 Layup 1254 LoadBolt 1270 LoadDefinition 1272 LoadETemp 1278 LoadGeom 1280 LoadMesh 1287 LoadNTemp 1296 LoadSet 1298 MapOutput 1312 Material 1318 Node 1325 Optim 1332 Output 1334 OutputSet 1371 Point 1374 properties 81 Property 1381 Readfile 50, 751 Report 1405 Selector 702, 788 Set 807 Solid 1406 Sort 873 Surface 1427 TMG 1493 TMGBC 1487 TMGCtrl 1490 TMGOpt 1496 TMGReal 1499 tools 699 UserData 898 Variable 1502 View 1507 objects FEMAP 31 offsets element 500, 501 open file 154, 752 Optim object 1332 methods 1313, 1333 properties 1312, 1332
order BSpline 483 elements 496 output calculate 397 components 1336 convert vector ID 398 example creating 48 force balance 399 from loads 394 process 384, 386, 387, 388, 389, 390, 391, 393 transforming 395 vector IDs 1337 output coordinate system 481 Output object 1334 methods 1338 properties 1334 OutputSet object 1371 methods 1372 properties 1371 OutputVectors 1373
P
page setup reset 212 save 211 panes 620, 621 ParamAtLength 1095 parametric coordinates 554 ParamToXYZ 1089, 1433 Parasolid file 172, 174, 200 ParseTitleID 952 PartialLength 1094 PartialLengthNode 1119 PartialLengthXYZ 1118 Paste 806 Patran file 188 Performance 81 phase loads 490 Pick Screen 609 pick coordinates 543, 544 picture copy 215, 216 replay 219 save 217, 218 Planar 1454 planar nodes 261 plane bisect 594 define 589, 590, 591 define with nodes 592 define with points 593 normal 596, 597, 598
principal 595 point coordinates 556 Point object 1374 methods 1374 properties 1374 Points 1407, 1450 points coincident 258 mesh size 401 move 463, 464 project 457, 458, 459, 460, 461 to define plane 593, 594 PointsAsSet 1408, 1451 Position 917 position in file 756 window 656 preferences reset 226 save 225 Prev 887, 906, 961 PrevEmptyID 972 PrevEmptySet 912, 968 PrevID 970 PrevSet 910, 966 primitive create 347 principal planes 595 Print 750 print file 213, 214 ProE file 175 program run 695, 696, 697 Project 1091 project coordinates 549, 553, 564, 565 mesh 462 nodes 458, 459, 460, 461 nodes/points 457 points 458, 459, 460, 461 ProjectOnto 1441 Prop 1077, 1179 properties elements 491 global boolean 116 global integer 110 global real 114 global string 117 update material 492 Property object 1381 access properties 1383 array index values 1384 methods 1394 properties 1381 Put 901, 947 PutAll 1023, 1199, 1205, 1211, 1217, 1223, 1273, 1329, 1489, 1492, 1495, 1498, 1501
PutAllArray 1174, 1200, 1206, 1212, 1218, 1224, 1330 PutCombination 1045, 1310 PutContactList 1061 PutContactTable 982, 1015 PutCoordArray 1201, 1207, 1213, 1220, 1226 PutCoordNormalArray 1219, 1225 PutCorrelate 1012, 1013 PutDataSurf 1129 PutElemWithCorner 1366 PutFunctionList 1195 PutLibrary 948 PutNodeList 1177 PutOutputList 1346 PutScalarAtElem 1359, 1369 PutScalarAtNode 1350 PutText 1007, 1008, 1009 PutTitle 902 PutVectorAtNode 1355
Q
quadrilateral elements modify 499
R
Range 1236 RangeAdd 1241 RangeDelete 1242 RangeDeleteAll 1243 RangeGetAll 1239 RangeNext 1240 RangeReset 1238 RationalParamToXYZ 1480 read 753 ReadBool 934 ReadBoolArray 937 ReadDouble 930 ReadDoubleArray 935 Readfile example using 50 Readfile object 751 methods 752 properties 751 ReadFloat 931 ReadLong 932 ReadLongArray 936 ReadShort 933 ReadString 938 RealField 785 rebuild 224 rectangle create 282, 283 Redraw 1526 redraw view 514 reflect 375 Regenerate 1527
regenerate view 515 register application 652, 653, 654 releases beam 495 Reload 851 remesh 437 Remove 842, 881 RemoveArray 844 RemoveGroup 848 RemoveInternalCurves 849 RemoveNotCommon 846, 847 RemoveRange 843 RemoveSet 845, 882 renumber IDs 473, 474 Reparse 778 Report object 1405 methods 1405 properties 1127, 1405 Reset 852, 885, 904, 958 ResetMeshAttr 1481 ResetNextBC 1024, 1040 ResetNextBCDef 1042 ResetNextLoad 1274, 1305 ResetNextLoadDef 1307 Resize 1161 Reverse 1072, 1086 revolve elements 451 solid 350 rigid element example creating 54 Rotate 1530 rotate 374 coordinate system 568, 569, 570 coordinates 563 entities 466, 467
S
Save 746 save as 158 SaveGroup 799 scale 373 entities 469 section properties mesh 254 surface 253 Select 835, 892 SelectAllOnLayer 1250 SelectBox 792 SelectCircle 793 SelectContact 1249 SelectFreehand 795 SelectID 836, 893, 973 SelectIDInSet 837
SelectList 840, 894 SelectMesh 1248 SelectModel 1247 SelectMultiID 838 Selector object 702, 788 methods 789 properties 788 SelectOutputVectorID 839 SelectPolygon 794 Set object 807, 873 Set object methods 808 properties 807 SetAdd 1244 SetAddOpt 1245 SetAllPly 1259 SetAutoFormat 782 SetBackgroundColor 733 SetCellBlank 1158 SetCellEquation 1145 SetCellValue 1144 SetColumnAlignment 716 SetColumnPosition 715 SetColumnTitle 714 SetColumnVisible 710 SetColumnWidth 712 SetColumTitle 1156 SetColumValue 1157 SetCylinder 1033 SetData 878 SetDefaults 1057 SetFixedFormat 780 SetFormFeed 775 SetFreeFormat 781 SetLayerVisible 1529 SetMultiGroupList 1523 SetNoBlankLines 765 SetNoShortLines 766 SetOffset 1065 SetOutputType 1064 SetPageTitle 1153 SetPageValue 1155 SetPly 1258 SetRigidType 1067, 1068 SetRowTitle 1149 SetRowValue 1151 SetRowVisible 706 SetSearch 772 SetSearchString 773 SetSkip 771 SetSkipAfterSearch 774 SetSurfDirection 1032 SetSurfNormal 1031 SetSurfSliding 1030 SetTabSize 776 SetTextColor 732 SetTrimEndSpace 768 SetTrimFront 769
SetTrimSpace 767 SetUppercase 770 shell solid 361 Show 749, 798 ShowGroup 737 ShowStatus 764 Shrink 797 size of file 759 skipped 763 slice solid 362, 363, 364 slivers cleanup 440 Solid 1442 solid add 356 chamfer 355 cleanup 366, 367 create 358 create primitive 347 embed 359 embed face 365 explode 339, 340, 351 extrude 349 fillet 354 intersect 360 modify 488 remove 357 remove face 369 revolve 350 shell 361 slice 362, 363, 364 stitch 352, 353 trim surface 345 Solid object 1406 methods 1407 properties 1406 SolidEdge file 176 Sort 895 Sort object methods 874 properties 873 SortRemoveDuplicates 896 Spherical 1456 spline create from curves 307 create from ellipse 304 create from hyperbola 306 create from parabola 305 create from points 301 create from tangent vectors 303 split elements 499 split surface 315, 316, 317 status bar 622, 623, 670, 671, 672, 764 STEP file 177, 180, 201 Stereolithography (STL) file 181, 202 stitch
solid 352, 353 surface axis vector 588 boundary 324, 325, 326, 327, 328 convert 338 coordinates on 553 create 329 create between curves 333 create by extrusion 334 create by revolution 335 create by sweeping 336 create from curves 330, 331 mesh 422 meshing attributes 344 modify 487 normal 337 remove hole 341 trim 346 update 308 Surface object 1427 methods 1431 properties 1427 Surfaces 1110, 1412 SurfacesAsSet 1111, 1380, 1413 sweep elements 453
Toroidal 1458 transform coordinates 558, 559, 560 vector 571, 573 transparency modify 471 trim surface 345, 346 Truncate 920
U
Unigraphics (.PRT) file 182 unit vector 584, 585, 586, 587 unlock interface 663, 665, 667, 669 update beam releases 495 coordinate systems 480 element formulations 498 elements 496 loads 490 material angle 493 material properties 492 midside nodes 497 surfaces 308 UpdateColumn 726 UpdateColumnByID 725 UpdateDataTable 801 UserData object 898 methods 899 properties 898
T
Tangent 1092 TangentAtEnds 1123 Tangents 1438 Text 1484 methods 1486 properties 1484 text create or update 236, 238 retrieve 240 Thickness 1188, 1402 timed save 159 TMG object properties 1487 TMGBC object 1487 methods 1488 TMGCtrl object 1490 methods 1491 properties 1490 TMGInt object 1493 methods 1494 properties 1493 TMGOpt object 1496 methods 1497 properties 1496 TMGReal object 1499 methods 1500 properties 1499 toolbars 619
V
VarAlongCoord 1130 VarArbitrary3DCoord 1141 VarBetween2Pts 1131 VarBetween4Pts 1133 VarBetween8Pts 1134 VarEquation 1142 variable add to model 231 retrieve 232 Variable object 1502 methods 1503 properties 1502 variant 33 VarMeshSurface 1138 VarOutputMap 1137 VarParametric2Pt 1135 VarParametric4Pt 1136 VarSpatialUVtable 1139 VarSpatialXYZTable 1140 VB6 32, 35, 43 VBA 31 Vector 1372 vector
at intersection 580 create unit 584 length 574 normalize 581 transform 573 transform vector 572 unit 586, 587 vectors angle between 578, 579 cross product 575 dot product 576 perpendicular 577 pick or enter 582, 583 transform 571 version 682 view all 516 cascade 520 make visible 513 redraw 514 regenerate 515 show 517 tile 518, 519 View object 1507 methods 1521 properties 1507 View Option types 1517 visibility 526 Visible 1525 visible 659 Visual Basic 31, 32, 35, 43 create FEMAP object 69 Visual C++ 31, 35 example using 65 VRML file 203
X
X 1339 XYPoints 1081 XYZToParam 1090, 1434
Y
Y 1340
Z
Z 1341
W
washer 314 window minimize or maximize 658 position 656 workplane coordinates convert 545 WriteBool 925 WriteBoolArray 928 WriteDouble 921 WriteDoubleArray 926 WriteFloat 922 WriteLong 923 WriteLongArray 927 WriteShort 924 WriteString 929