CSOManualCorrectionProcessor¶
-
MLModule
¶ genre CSOProcessor
author Frank Heckel
package FMEwork/ReleaseMeVis
dll SoCSOMiscModules
definition SoCSOMiscModules.def see also SoView2DCSOEditor
,CSOModifyProcessor
,CSOFreehandProcessor
keywords CSO
,contour
,segmentation
,editing
,correction
Purpose¶
The CSOManualCorrectionProcessor allows an intuitive manual correction of CSOs in 2D.
Usage¶
Connect the output to a SoView2DCSOEditor.
Details¶
None.
Tips¶
The sub type of a newly generated CSO is set to “SUB_TYPE_PRIMARY” for the result of the manual correction and to “SUB_TYPE_SECONDARY” for the CSO that is not the result of the correction step.
Output Fields¶
Parameter Fields¶
Field Index¶
Add To Group : String |
Generation Mode : Enum |
Min. Distance Between Seed Points (mm) : Float |
addCSOToGroupMode : Enum |
Interpolation Mode : Enum |
Overwrite type : Bool |
addCSOToGroupWithId : Integer |
Is closed : Bool |
Plane normal : Vector3 |
Area : Float |
Keeping Mode : Enum |
Reference Point : Vector3 |
Closed Contour Handling Mode : Enum |
Keeping Mode Fallback : Enum |
Smooth edited CSOs : Bool |
Closing Distance (mm) : Float |
Last Edited CSO Id : Integer |
Start/End Threshold : Double |
Creator Id : Integer |
Last Seed point : Vector3 |
Threshold : Double |
Edit all timepoints : Bool |
Length : Float |
Use intersection points : Bool |
First seed point : Vector3 |
Level CSOs to closest plane : Bool |
Used Center Of Gravity : Vector3 |
Generate secondary : Bool |
Middle seed point : Vector3 |
Visible Fields¶
Add To Group¶
-
name:
addCSOToGroupWithLabel
, type:
String
¶ If this field is non-empty, the CSOGroup with this label is looked up in the CSOList. If it is not found, the group is created. All generated CSOs are attached to that group. Default is empty.
Creator Id¶
-
name:
id
, type:
Integer
, default:
0
¶ This field determines the creator id of the generated CSOs. Default is 0.
Edit all timepoints¶
-
name:
editAllTimePoints
, type:
Bool
, default:
FALSE
¶ If enabled, the editing affects all time points.
Keeping Mode¶
-
name:
keepingMode
, type:
Enum
, default:
KeepingModeKeepLargest
¶ Defines which of the possible resulting CSOs should be kept.
Values:
Title | Name | Description |
---|---|---|
Keep Longest | KeepingModeKeepLongest | Uses the length of the CSO. |
Keep Shortest | KeepingModeKeepShortest | Uses the length of the CSO. |
Keep Largest | KeepingModeKeepLargest | Uses the area of the CSO. |
Keep Smallest | KeepingModeKeepSmallest | Uses the area of the CSO. |
Dont Keep Center Of Gravity | KeepingModeDontKeepCenterOfGravity | Uses the center of gravity of the CSO, i.e., it is checked which CSO does not contain the center of gravity of the original CSO. |
Keep External Ref Point | KeepingModeKeepExternalRefPoint | |
Dont Keep External Ref Point | KeepingModeDontKeepExternalRefPoint | |
Keep Center Of Gravity | KeepingModeKeepCenterOfGravity |
Keeping Mode Fallback¶
-
name:
keepingModeFallback
, type:
Enum
, default:
KeepingModeKeepLargest
¶ Defines which of the possible resulting CSOs should be kept if a center-of-gravity-mode is selected as keepingMode and no resulting CSO contains the center of gravity.
Values:
Title | Name | Description |
---|---|---|
Longest | KeepingModeKeepLongest | Uses the length of the CSO. |
Shortest | KeepingModeKeepShortest | Uses the length of the CSO. |
Largest | KeepingModeKeepLargest | Uses the area of the CSO. |
Smallest | KeepingModeKeepSmallest | Uses the area of the CSO. |
Generation Mode¶
-
name:
generationMode
, type:
Enum
, default:
GenerationModeReplaceExisting
¶ Defines if the existing CSOs should be modified (“Replace Existing”) or if new CSOs should be generated (“Generate New”).
Values:
Title | Name | Description |
---|---|---|
Generate New | GenerationModeGenerateNew | Adds a new CSO. |
Replace Existing | GenerationModeReplaceExisting | Replaces existing CSOs. |
Generate secondary¶
-
name:
generateSecondary
, type:
Bool
, default:
FALSE
¶ If enabled, the secondary CSO is generated as well (i.e., the CSO that is not the result of the manual correction). See also Tips and Tricks.
Overwrite type¶
-
name:
overwriteType
, type:
Bool
, default:
FALSE
¶ If enabled, the type of the corrected CSO is set to “CSOManualCorrectionProcessor” and the subtype is set to “SUB_TYPE_PRIMARY”. See also Tips and Tricks.
Closed Contour Handling Mode¶
-
name:
closedContourHandlingMode
, type:
Enum
, default:
ClosedHandlingModeAddNew
¶ Defines how closed CSOs should be handled by the processor.
Values:
Title | Name | Description |
---|---|---|
Ignore | ClosedHandlingModeIgnore | Closed CSOs are ignored. |
Add New | ClosedHandlingModeAddNew | Closed CSOs are added as new CSOs. |
Replace Closest | ClosedHandlingModeReplaceClosest | Closed CSOs replace the closest CSO. |
Closing Distance (mm)¶
-
name:
closingDistance
, type:
Float
, default:
2
¶ If the distance between the start and the end point of the user drawn CSO is smaller than this value, no CSO is modified. Instead a new closed CSO is added based on the user drawn CSO.
Interpolation Mode¶
-
name:
interpolationMode
, type:
Enum
, default:
InterpolationModeSplineApproximation
¶ Defines the interpolation method for the drawn contour.
Values:
Title | Name |
---|---|
Linear Interpolation | InterpolationModeLinearInterpolation |
Spline Interpolation | InterpolationModeSplineInterpolation |
Spline Approximation | InterpolationModeSplineApproximation |
Min. Distance Between Seed Points (mm)¶
-
name:
minSeedPointDistance
, type:
Float
, default:
8
¶ Sets the distance of the current seed point to the first seed point. If the distance is less than this value, the contour can be closed.
Use intersection points¶
-
name:
useIntersections
, type:
Bool
, default:
TRUE
¶ Defines if the first and the last intersection point should be used when modifying a CSO. Otherwise the the start and the end point of the user drawn contour are used.
Threshold¶
-
name:
intersectionThreshold
, type:
Double
, default:
0.0001
, minimum:
0
¶ Threshold for intersection detection.
Start/End Threshold¶
-
name:
intersectionThresholdStartAndEnd
, type:
Double
, default:
1
, minimum:
0
¶ Threshold for considering the start- and end-point as intersecting.
Level CSOs to closest plane¶
-
name:
level
, type:
Bool
, default:
TRUE
¶ Enables leveling of the edited CSOs to the closest plane.
Smooth edited CSOs¶
-
name:
smoothEditedCSOs
, type:
Bool
, default:
FALSE
¶ If enabled, the edited CSO is smoothed.
Plane normal¶
-
name:
inputCSOPlaneNormal
, type:
Vector3
, persistent:
no
¶ The normal of the user drawn CSO.
First seed point¶
-
name:
inputCSOFirstSeedPoint
, type:
Vector3
, persistent:
no
¶ The world position of the first seed point of the user drawn CSO.
Middle seed point¶
-
name:
inputCSOMiddleSeedPoint
, type:
Vector3
, persistent:
no
¶ The world position of the middle seed point of the user drawn CSO.
Last Seed point¶
-
name:
inputCSOLastSeedPoint
, type:
Vector3
, persistent:
no
¶ The world position of the last seed point of the user drawn CSO.