labvanced logoLabVanced
  • Research
    • Publications
    • Researcher Interviews
    • Use Cases
      • Developmental Psychology
      • Linguistics
      • Clinical & Digital Health
      • Educational Psychology
      • Cognitive & Neuro
      • Social & Personality
      • Arts Research
      • Sports & Movement
      • Marketing & Consumer Behavior
      • Economics
      • HCI / UX
      • Commercial / Industry Use
    • Labvanced Blog
    • Services
  • Technology
    • Feature Overview
    • Code-Free Study Building
    • Eye Tracking
    • Mouse Tracking
    • Generative AI Integration
    • Multi User Studies
    • More ...
      • Reaction Time/Precise Timing
      • Text Transcription
      • Heart Rate Detection (rPPG)
      • Emotion Detection
      • Questionnaires/Surveys
      • Experimental Control
      • Data Privacy & Security
      • Desktop App
      • Mobile App
  • Learn
    • Guide
    • Videos
    • Walkthroughs
    • FAQ
    • Release Notes
    • Documents
    • Classroom
  • Experiments
    • Cognitive Tests
    • Sample Studies
    • Public Experiment Library
  • Pricing
    • Licenses
    • Top-Up Recordings
    • Subject Recruitment
    • Study Building
    • Dedicated Support
    • Checkout
  • About
    • About Us
    • Contact
    • Downloads
    • Careers
    • Impressum
    • Disclaimer
    • Privacy & Security
    • Terms & Conditions
    • Third-Party Licenses
  • Appgo to app icon
  • Logingo to app icon
Learn
Guide
Videos
Walkthroughs
FAQ
Newsletter Archive
Documents
Classroom
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
  • 日本語
Guide
Videos
Walkthroughs
FAQ
Newsletter Archive
Documents
Classroom
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
  • 日本語
  • Guide
    • GETTING STARTED

      • Task Editor
      • Stimulus Presentation
      • Correctness of Response
      • Objects
      • Events
      • Variables
      • Task Wizard
      • Trial System
      • Study Design
        • Tasks
        • Blocks
        • Sessions
        • Groups
    • FEATURED TOPICS

      • Experiment Design
        • Creating a Study
        • Data Frame Patterns
      • Randomization & Balance
      • Eye Tracking
        • Presenting Stimuli in an Eye Tracking Task
        • How to Choose Eye Tracking Calibration Settings
        • Setting Up Eye Tracking in a Task
        • Recording and Exporting Gaze Data
        • Using Shapes as Areas of Interest (AOI) for Eye Tracking
        • The Participant Calibration Experience
      • Web Bridge
      • Questionnaires
      • Desktop App
      • Sample Studies
      • Participant Recruitment
      • API Access
        • REST API
        • Webhook API
        • WebSocket API
      • Other Topics

        • Precise Stimulus Timings
        • Multi User Studies
        • Head Tracking in Labvanced | Guide
    • MAIN APP TABS

      • Overview: Main Tabs
      • Dashboard
      • My Studies
      • Shared Studies
      • My Files
      • Experiment Library
      • My Account
      • License & Services
    • STUDY TABS

      • Overview: Study-Specific Tabs
      • Study Design
        • Tasks
        • Blocks
        • Sessions
        • Groups
      • Task Editor
        • Task Controls
        • The Trial System
        • Canvas and Page Frames
        • Objects
        • Object Property Tables
        • Variables
        • System Variables Tables
        • The Event System
        • Text Editor Functions
        • Eye Tracking Options in the Task Editor
        • Head Tracking in a Task
        • Multi-User Studies
      • Settings
      • Variables
      • Media
      • Texts & Translate
      • Launch & Participate
      • Subject Management
      • Dataview and Export
        • Dataview and Variable & Task Selection (OLD Version)
        • Accessing Recordings (OLD Version)
  • Videos
    • Video Overview
    • Getting Started in Labvanced
    • Creating Tasks
    • Element Videos
    • Events & Variables
    • Advanced Topics
  • Walkthroughs
    • Introduction
    • Stroop Task
    • Lexical Decision Task
    • Posner Gaze Cueing Task
    • Change Blindness Flicker Paradigm
    • Eye-tracking Sample Study
    • Infant Eye-tracking Study
    • Attentional Capture Study with Mouse Tracking
    • Rapid Serial Visual Presentation
    • ChatGPT Study
    • Eye Tracking Demo: SVGs as AOIs
    • Multi-User Demo: Show Subjects' Cursors
    • Gamepad / Joystick Controller- Basic Set Up
    • Desktop App Study with EEG Integration
    • Between-subjects Group Balancing and Variable Setup
    • Website Frame Eye Tracking Walkthrough
    • Conditional Webcam Eye Tracking
  • FAQ
    • Features
    • Support Policy & Guidelines
    • Security & Data Privacy
    • Licensing
    • Precision of Labvanced
    • Programmatic Use & API
    • Using Labvanced Offline
    • Troubleshooting
    • Study Creation Questions
  • Newsletter Archive
  • Documents
  • Classroom
Polygon object in the Labvanced experiment editor.

Polygon

The Polygon object lets you place a custom polygon-shaped stimulus on a frame by clicking to define its vertices in the task editor. Once drawn, the polygon is fully editable: you can drag existing vertices, add midpoints, and remove points. Polygon fill and stroke appearance is configurable, and you can link the shape to a stimulus information variable.

A common application is eye tracking: by tracing the outline of an irregular stimulus with many vertices, you can use the Polygon as a precise AOI mask in the Analyzer. This is especially useful when the stimulus shape cannot be captured with a rectangle and an SVG is not available.

Table of Contents

  • Adding the Polygon Drawing Object
  • Drawing a Polygon
  • Modifying an Existing Polygon
  • Object Properties
  • Points Table
  • Clearing the Drawing
  • Using the Polygon as an Eye Tracking AOI
  • Modifying the Polygon at Runtime
  • Further Reading

Adding the Polygon Drawing Object

In the task editor toolbar, open the Images & Drawing group and select Polygon to add a Polygon object to the current frame.

The element is added to the frame as an empty polygon. Drawing mode starts automatically so you can begin placing vertices immediately.


Drawing a Polygon

With the Polygon Drawing Object selected and drawing mode active, click anywhere on the frame canvas to place a vertex. Each click adds a new point to the polygon outline.

To close the polygon (connect the last vertex back to the first), click on the circular handle at the first vertex. Alternatively, check the Closed property in the properties panel to force the shape closed without clicking the handle.

To stop adding vertices without closing the shape, click Stop drawing (ESC) in the properties panel, or press ESC. The polygon remains as an open polyline until Closed is enabled.


Modifying an Existing Polygon

After stopping drawing, the polygon enters edit mode. All existing vertex handles remain visible on the canvas.

  • Move a vertex: Click and drag any vertex handle to a new position. The polygon edges update in real time.
  • Add a midpoint: In the Points Table, click the + icon on any row. A new vertex is inserted at the midpoint between that point and the next one in the sequence.
  • Remove a vertex: In the Points Table, click the × icon on the row for the vertex you want to delete.

To resume adding new vertices at the end of the sequence, click Continue drawing in the properties panel.


Object Properties

All properties below are found in the properties panel when the Polygon Drawing Object is selected.

PropertyDescription
Stimulus InfoA text label associated with the element. Use this to link the polygon to a stimulus information variable for recording or identifying the shape in exported data.
Fill colorA checkbox controls whether fill is applied. When checked, a color picker sets the fill color of the polygon interior. When unchecked, the interior is transparent.
Stroke colorThe color of the polygon outline. Use the color picker to set it.
Stroke widthThe width of the polygon outline in pixels. Enter a positive number.
ClosedWhen checked, the last vertex is connected back to the first, forming a closed polygon. When unchecked, the shape is an open polyline.

Points Table

The Points section in the properties panel shows a table of all current vertices. Each row displays the vertex index (nr), its horizontal position (x), and its vertical position (y) in frame coordinates.

Use the row controls to:

  • Click + to insert a new vertex at the midpoint between that row and the next.
  • Click the remove icon to delete the vertex at that row.

You can also set the polygon's points programmatically using a data frame variable and the Set Object Property action in the event system. Each row in the data frame represents one vertex, with columns for x and y coordinates.


Clearing the Drawing

To remove all vertices and start the polygon from scratch, click Clear all in the properties panel. This resets the shape to an empty polygon and re-enters drawing mode automatically.


Using the Polygon as an Eye Tracking AOI

The Polygon object can serve as an invisible AOI mask for eye tracking. The typical setup is to draw the polygon tracing the outline of an irregular stimulus, then leave it completely unstyled: no fill, no stroke. The polygon is invisible to participants but its vertex boundary is used for gaze and fixation hit-testing.

Use this approach when a rectangular AOI is too coarse for the stimulus shape and an SVG element is not available. Because you can place as many vertices as needed, you can closely follow any irregular contour.

Gaze and fixation samples are tested against the polygon's exact vertex set rather than a bounding rectangle. Metrics such as dwell time and percentage of time in AOI are computed using the full polygon boundary.

If your polygon shape differs per condition, the correct vertex set is resolved per trial automatically using the modifier system.

Give the polygon a clear Stimulus Info label so it is easy to identify when configuring AOI metrics.


Modifying the Polygon at Runtime

Use the Set Object Property action in the event system to update the polygon during an experiment. The following properties can be set at runtime:

PropertyTypeWhat it does
stimulusInformationstringUpdates the stimulus label associated with the polygon.
fillColorstringChanges the polygon fill color.
strokeColorstringChanges the polygon outline color.
strokeWidthnumberChanges the outline width in pixels.
pointsarrayReplaces the full vertex set with a new set of [x, y] coordinate pairs.
hasClosedbooleanSets whether the polygon is closed (true) or open (false).

Example: replace the polygon's shape when a trial starts

Trigger: On Frame Start
Action: Set Object Property -> Set Target: your Polygon object -> Property: points -> Value: your variable containing the new coordinate array


Further Reading

Object Properties

The shared properties panel all objects inherit: position, size, scale, rotation, and style. Covers the Keep Aspect Ratio setting and copy/paste controls for position and scale values.

Event System

How triggers and actions work in Labvanced. Use Set Object Property to update polygon vertices, fill, stroke, and closed state at runtime.

All Objects

A full index of all objects available in the Labvanced experiment editor, including display, input, media, and recording elements.