10.0-SA1-110 API Programmer's Guide

HM Ext API

Starting with version 10.0-SA1-110, a new API has been added to HyperMesh. This API allows external applications to link HyperMesh as a library and provides a limited set of functions and structures to access specific functionality in HyperMesh. See the Ext API documentation for full details. Currently, the API is only available on win32 and win64.

New Commands

Modified Commands

  • General/Core
    • hm_framework – New event before_exit added for registerproc, unregisterproc and getregisteredprocs arguments.
    • hm_getentityarray – Has been updated with the following data names:
      • components: connectors, elements, lines, nodes, points, solids, surfaces
      • contactsurfs: face_indicies, reversecode
      • elements (all configs): nodes
      • rbe3 elements: independentcoeffs, independentdof, independentnodes
      • rigidlink elements: dependentnodes
      • groups: elements
      • outputblocks: assemblies, components, elements, groups, materials, nodes, properties, sets, systems
    • hm_getentityvalue – Has been updated with the following data names:
      • beamsections: collector
      • blocks: systemid
      • cards: name
      • gap elements: length
      • rigidlink elements: dependentnodesetid
      • loads: mappedid
    • *createmark/*appendmark/hm_createmark/hm_appendmark – Have been updated with the following selection methods:
      • assemblies "by comp"
      • assemblies "by comp id"
      • assemblies "by comp name"
      • assemblies "by component"
      • assemblies "by component id"
      • assemblies "by component name"
      • assemblies "by outputblock"
      • assemblies "by outputblock id"
      • assemblies "by outputblock name"
      • assemblies "by multibody"
      • assemblies "by multibody id"
      • assemblies "by multibody name"
      • beamsections "by collector"
      • beamsections "by collector id"
      • beamsections "by collector name"
      • curves "by plot"
      • curves "by plot id"
      • curves "by plot name"
      • elements "by node"
      • elements "by node id"
      • elements "by set"
      • elements "by set id"
      • elements "by set name"
      • nodes "by elem"
      • nodes "by elem id"
      • nodes "by element"
      • nodes "by element id"
      • nodes "by set"
      • nodes "by set id"
      • nodes "by set name"
      • outputblocks "by assem"
      • outputblocks "by assem id"
      • outputblocks "by assem name"
      • outputblocks "by assembly"
      • outputblocks "by assembly id"
      • outputblocks "by assembly name"
      • outputblocks "by comp"
      • outputblocks "by comp id"
      • outputblocks "by comp name"
      • outputblocks "by component"
      • outputblocks "by component id"
      • outputblocks "by component name"
      • outputblocks "by elem"
      • outputblocks "by elem id"
      • outputblocks "by element"
      • outputblocks "by element id"
      • outputblocks "by group"
      • outputblocks "by group id"
      • outputblocks "by group name"
      • outputblocks "by material"
      • outputblocks "by material id"
      • outputblocks "by material name"
      • outputblocks "by node"
      • outputblocks "by node id"
      • outputblocks "by property"
      • outputblocks "by property id"
      • outputblocks "by property name"
      • outputblocks "by set"
      • outputblocks "by set id"
      • outputblocks "by set name"
      • outputblocks "by system"
      • outputblocks "by system id"
      • sets "by assem"
      • sets "by assem id"
      • sets "by assem name"
      • sets "by assembly"
      • sets "by assembly id"
      • sets "by assembly name"
      • sets "by comp"
      • sets "by comp id"
      • sets "by comp name"
      • sets "by component"
      • sets "by component id"
      • sets "by component name"
      • sets "by elem"
      • sets "by elem id"
      • sets "by element"
      • sets "by element id"
      • sets "by ellipsoid"
      • sets "by ellipsoid id"
      • sets "by ellipsoid name"
      • sets "by material"
      • sets "by material id"
      • sets "by material name"
      • sets "by mbjoint"
      • sets "by mbjoint id"
      • sets "by mbjoint name"
      • sets "by mbplane"
      • sets "by mbplane id"
      • sets "by mbplane name"
      • sets "by multibody"
      • sets "by multibody id"
      • sets "by multibody name"
      • sets "by node"
      • sets "by node id"
      • sets "by property"
      • sets "by property id"
      • sets "by property name"
    • *findmark – Has been updated with the following selection methods:
      • assemblies attached to components
      • components attached to outputblocks
      • components attached to sets
      • elements attached to outputblocks
      • elements attached to sets
      • groups attached to outputblocks
      • groups attached to sets
      • loads attached to sets
      • nodes attached to outputblocks
      • systems attached to outputblocks
    • *positionmark – Updated to support groups for rigidwall entities.
    • *reflectmark/*reflectmarkwithoption – Updated to support groups for rigidwall entities.
    • *rotatemark – Updated to support groups for rigidwall entities.
    • *scalemark/*scalemarkwithsystem – Updated to support groups for rigidwall entities.
    • *transformmark – Updated to support groups for rigidwall entities.
    • *translatemark/*translatemarkwithsystem – Updated to support groups for rigidwall entities.
    • *compressreal() – Added new option 3 to disable writing 'E' or 'e' and any leading zeros on the exponent.