# cee::vis::MarkupPartFixedSizeArrow

class `MarkupPartFixedSizeArrow` : public MarkupPart

  A MarkupModel part for drawing an arrow with a constant size independent of the camera settings.

  The arrow will have the given size (in pixels) independent on camera position and settings.

  The following settings can be specified:

  - position: The start position of the arrow
  - direction: The direction of the arrow
  - color: The color for the arrow in the part
  - lengthInPixels: The length of the arrow in pixels
  - numSubDivisions: The resolution of the arrow. A higher number will give a more smooth arrow, but will result in more triangles per arrow and thus (somewhat) decreased performance.

  See also

  MarkupModel

  Public Functions

  `MarkupPartFixedSizeArrow`()

    Constructs an empty part.

  `MarkupPartFixedSizeArrow`(const Vec3d &position, const Vec3d &direction, double lengthInPixels, const Color3f &color)

    Constructs a part with the given settings.

    - position: The start position of the arrow
    - direction: The direction of the arrow
    - lengthInPixels: The length of the arrow in pixels
    - color: The color for the arrow in the part
  virtual PartType `type`() const

    Returns the type of the part. Always MarkupPart::FIXED_SIZE_ARROW.

  virtual BoundingBox `boundingBox`() const

    Returns the current bounding box of the part.

  virtual void `setPriority`(int priority)

    Sets render priority of the part.

    The render priority determines the order in which parts get rendered. Parts with lower priorities get rendered first. The default priority is 10.

  virtual int `priority`() const

    Returns the render priority of the part.

  virtual const Mat4d &`transformation`() const

    Returns the current transformation matrix for the part.

  virtual void `setTransformation`(const Mat4d &matrix)

    Sets the transformation matrix to use for the part.

  const Color3f &`color`() const

    Returns the color of the arrow in the part.

  void `setColor`(const Color3f &color)

    Sets the color to use to draw the arrows in the part.

  Vec3d `position`() const

    Returns the start position of the arrow.

  void `setPosition`(const Vec3d &pos)

    Sets the start position of the arrow.

  Vec3d `direction`() const

    Returns the direction of the arrow.

  void `setDirection`(const Vec3d &dir)

    Sets the direction of the arrow.

  double `lengthInPixels`() const

    Returns the fixed length in pixels of the arrow.

  void `setLengthInPixels`(double length)

    Sets the length in pixels of the arrow.

  unsigned int `numberOfSubDivisions`() const

    Returns the resolution of the arrow.

    See also

    setNumberOfSubDivisions

  void `setNumberOfSubDivisions`(unsigned int numSubDivisions)

    Sets the resolution of the arrow.

    numSubDivisions specifies the number of lines in the tessellated arrow. A higher number will give a more smooth arrow, but will result in more triangles per arrow and thus (somewhat) decreased performance.

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your Docs generative AI assistant. Ask me anything about HOOPS Envision for Desktop or choose a sample question below to start a conversation:

What is HOOPS Envision for Desktop?
What are the latest release notes for HOOPS Envision for Desktop?
How do I start evaluating HOOPS Envision for Desktop?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...