Skip to content

ToolSnapper

ToolSnapper#

(Tool Snapper)

  • Category: Brush
  • Default object name: tool_snapper
  • Inherits from: ProjectItem

No corresponding User page.

Description#

Brush definition to snap particles in Point Cloud objects.

Public Attributes#

Type Name Visual Hint Description
bool update_normals VISUAL_HINT_DEFAULT Update particle normals using the normals of the underlying surfaces each particle gets snapped to.
long snapping_projection_mode VISUAL_HINT_DEFAULT Controls the projection axis to snap particles onto underlying geometries: View camera axis or particle Normals (if they exist) or Custom axis.
long snapping_direction VISUAL_HINT_DEFAULT Specifies the direction of the projection. When set to Both directions, the particles are snapped to the nearest surface.
double[3] snapping_custom_axis VISUAL_HINT_DISTANCE Specifies the Custom projection axis in world space.
double min_snapping_distance VISUAL_HINT_DISTANCE Set a minimum distance so that particles aren't snapped to surfaces that are below this specified distance.
double max_snapping_distance VISUAL_HINT_DISTANCE Set a maximum distance so that particles aren't snapped to surfaces that are beyond this specified distance.
double snapping_weight VISUAL_HINT_PERCENTAGE Set the weight (or intensity) of the snapping from no snapping (0%) to full snapping (100%).
long snapper_type VISUAL_HINT_DEFAULT Set the shape of the brush used by the Snapper.
double snapper_size VISUAL_HINT_DEFAULT Set the size (diameter) of the brush for which the unit is controlled by Snapper Unit.
double snapper_thickness VISUAL_HINT_DEFAULT Set the height of the cylinder when Snapper Type is set to Cylinder.
long snapper_unit VISUAL_HINT_DEFAULT Set the unit of the Snapper Size which can either be in Screen or World space.
double snapper_strength VISUAL_HINT_PERCENTAGE Modulates the number of modified values.
double snapper_falloff VISUAL_HINT_PERCENTAGE Distribution factor. Higher value snaps more points near the center of the Snapper brush.
long snapper_pressure_mapping VISUAL_HINT_DEFAULT Defines how pressure is taken into account.

CID#

class "ToolSnapper" "ProjectItem" {
    #version 0.9
    icon "../icons/object_icons/tool_paintbrush.iconrc"
    category "Brush"
    doc "Brush definition to snap particles in Point Cloud objects."
    attribute_group "snapper" {
        bool "update_normals" {
            doc "Update particle normals using the normals of the underlying surfaces each particle gets snapped to."
            value no
        }
        long "snapping_projection_mode" {
            doc "Controls the projection axis to snap particles onto underlying geometries: View camera axis or particle Normals (if they exist) or Custom axis."
            preset "View" "0"
            preset "Normals" "1"
            preset "Custom" "2"
            value 0
        }
        long "snapping_direction" {
            doc "Specifies the direction of the projection. When set to Both directions, the particles are snapped to the nearest surface."
            preset "Forward" "1"
            preset "Backward" "2"
            preset "Both" "3"
            value 3
        }
        distance[3] "snapping_custom_axis" {
            doc "Specifies the Custom projection axis in world space."
            read_only yes
            value 0.0 -1 0.0
        }
        distance "min_snapping_distance" {
            doc "Set a minimum distance so that particles aren\'t snapped to surfaces that are below this specified distance."
            numeric_range yes 0.0 1.79769313486232e+308
            ui_range yes 0.0 1.79769313486232e+308
            value 0.0
        }
        distance "max_snapping_distance" {
            doc "Set a maximum distance so that particles aren\'t snapped to surfaces that are beyond this specified distance."
            null_label "Infinite"
            null_value "-1.0"
            numeric_range yes 0.0 1.79769313486232e+308
            ui_range yes 0.0 1.79769313486232e+308
            value -1
        }
        percentage "snapping_weight" {
            doc "Set the weight (or intensity) of the snapping from no snapping (0%) to full snapping (100%)."
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 1
        }
        long "snapper_type" {
            doc "Set the shape of the brush used by the Snapper."
            preset "Sphere" "0"
            preset "Cylinder" "1"
            preset "Hemisphere" "2"
            preset "Punch" "3"
            value 3
        }
        double "snapper_size" {
            doc "Set the size (diameter) of the brush for which the unit is controlled by Snapper Unit."
            slider yes
            numeric_range yes 0.0 1.79769313486232e+308
            ui_range yes 0.0 250
            value 1
        }
        double "snapper_thickness" {
            doc "Set the height of the cylinder when Snapper Type is set to Cylinder."
            numeric_range yes 0.0 1.79769313486232e+308
            read_only yes
            value 1
        }
        long "snapper_unit" {
            doc "Set the unit of the Snapper Size which can either be in Screen or World space."
            preset "Screen" "0"
            preset "World" "1"
            value 0
        }
        percentage "snapper_strength" {
            doc "Modulates the number of modified values."
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 1
        }
        percentage "snapper_falloff" {
            doc "Distribution factor. Higher value snaps more points near the center of the Snapper brush."
            slider yes
            numeric_range yes 0.0 1
            ui_range yes 0.0 1
            value 0.0
        }
        long "snapper_pressure_mapping" {
            doc "Defines how pressure is taken into account."
            preset "Strength" "2"
            preset "Size" "1"
            preset "Strength+Size" "3"
            preset "None" "0"
            value 2
        }
        string "ui_name" {
            private yes
            saveable no
            value "snapper"
        }
    }
}