3D Primitives

_images/snapshot.png

3D Primitives

JCMgeo allows addition of 3D primitives to a computational domain defined by an extrusion layout. The 3D primitives are placed in a section Objects at the same level as Extrusion.

Layout3D {
  Extrusion {
    Objects {
      # 2D definitions (x-y-coordinates)
      Parallelogram { ... }
      ...
    }
    # extrusion to 3D (z-direction)
    MultiLayer {
      LayerInterface { ...}
      Layer { ... }
      ...
      LayerInterface { ... }
    }
  }
  Objects {
    Box { ... }
    Ellipsoid{ ... }
    Sphere { ... }
    SuperEllipsoid { ... }
    Helix { ... }
    Cone { ... }
    Cylinder { ... }
    ...
  }
}

The newly introduced 3D primitives (some are shown in the figure above) share many of the properties of their 2D counterparts. DomainId and Priority are assigned and treated in the same way, i.e. they can be used to cut parts of lower priority objects out or fuse objects with the same DomainId together. MeshOptions additionally include a BoundaryMeshConstraint to control surface and volume meshes independently of each other. The 3D primitives are placed according to their GlobalPosition and their orientation is controlled by the Rotation.

A more detailed description of the different primitives and examples can be found here