A Simple Femap API Program Tutorial: to generate a rectangular patch of elements. This tutorial is basically a continuation  of tutorial 2 but we join up the nodes.

1) Follow steps 1 to 4 in tutorial 1 to add a command button to the worksheet

2) The code :-

Option Explicit

Private Sub CommandButton1_Click()

Dim gfemap As Object

Dim oNode As Object

Dim i As Integer

Dim J As Integer

Dim iNID As Integer  ‘Will be used to count the node ID

Dim dx As Double

Dim dy As Double

Dim dz As Double

Dim iIDarray(0 To 10, 0 To 10) As Integer

iNID = 1                                                     ‘Start the node IDs at 1

Set gfemap = GetObject(, “femap.model”)

Set oNode = gfemap.fenode


‘ Generate the Nodes as in Tutorial 2

‘ We need to generate the nodes befor the elements but also

‘ need to remember the node IDs – hence 2d array iIDarray


For i = 0 To 10

  For J = 0 To 10

    dx = i * 0.1                                          ‘Create some x,y values for are nodes

    dy = J * 0.1

    dz = 0.5

    oNode.X = dx                                       ‘Set the X,Y,Z properties of the femap node object

    oNode.y = dy

    oNode.z = dz

    oNode.ID = iNID                                   ‘Set the node ID

    oNode.Put (iNID)                                  ‘Put the node back into femap at this ID location


    ‘ Save the node IDs so we can generate the elements next step


    iIDarray(i, J) = iNID

    iNID = iNID + 1                                     ‘Increment the node ID

  Next J

Next i


‘ Generate the elements


Dim iEID As Integer                                  ‘Will be used to count the Element IDs

Dim oElem As Object

‘oElem to the femap element object

Set oElem = gfemap.feElem

iEID = 1

For i = 0 To 9

  For J = 0 To 9

     oElem.node(0) = iIDarray(i, J)                ‘Specify the nodes for the element

     oElem.node(1) = iIDarray(i, J + 1)          ‘with the node IDs we stored in

     oElem.node(2) = iIDarray(i + 1, J + 1)     ‘iIDarray during the node creation

     oElem.node(3) = iIDarray(i + 1, J)

     oElem.Type = 21                                   ‘The type for this element is laminate

     oElem.topology = 4                                ‘The topology is a 4 node quad

     oElem.PropID = 1                                  ‘The Property ID is 1 – which doest actually

                                                                 ‘exist so the element will be a plot only

     oElem.ID = iEID

     oElem.Put (iEID)

     iEID = iEID + 1

  Next J

Next i

End Sub

3) Exit design mode, press the command button and do a Femap regen. The nodes and elements should have been created as illustrated below:-

The next tutorial is a simple grep type utility for extracting lines from a text file. It could be used, for example, to strip  all the QUAD4 lines from a Nastran deck.