-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
2c2ab70
commit a3cbf0b
Showing
25 changed files
with
849 additions
and
27 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Submodule V3Schema
updated
19 files
+28 −0 | MF/V3/Descriptors/HeatMap.proto | |
+54 −0 | MF/V3/Descriptors/Import.proto | |
+4 −2 | MF/V3/Descriptors/ScanData.proto | |
+37 −1 | MF/V3/Descriptors/Settings/Advanced.proto | |
+12 −0 | MF/V3/Settings/Advanced.proto | |
+0 −28 | MF/V3/Settings/CopyGroup.proto | |
+36 −0 | MF/V3/Settings/CopyGroups.proto | |
+17 −0 | MF/V3/Settings/Export.proto | |
+16 −0 | MF/V3/Settings/HeatMap.proto | |
+38 −0 | MF/V3/Settings/Import.proto | |
+6 −0 | MF/V3/Settings/Scan.proto | |
+5 −3 | MF/V3/Settings/ScanData.proto | |
+13 −0 | MF/V3/Settings/Turntable.proto | |
+101 −0 | MF/V3/Tasks/CopyGroups.proto | |
+102 −0 | MF/V3/Tasks/ExportHeatMap.proto | |
+165 −0 | MF/V3/Tasks/HeatMap.proto | |
+106 −0 | MF/V3/Tasks/Import.proto | |
+16 −0 | MF/V3/Three.proto | |
+8 −2 | scripts/gen-doc/gen-doc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
class HeatMap: | ||
|
||
""" | ||
Heat map descriptor. | ||
""" | ||
def __init__(self, count: int, min: float, max: float, median: float, mean: float, stddev: float, outlierDistance: float): | ||
# The of points included in the point-to-mesh statistics. | ||
self.count = count | ||
# The minimum point-to-mesh distance. | ||
self.min = min | ||
# The maximum point-to-mesh distance. | ||
self.max = max | ||
# The median point-to-mesh distance. | ||
self.median = median | ||
# The mean point-to-mesh distance. | ||
self.mean = mean | ||
# The standard deviation of the point-to-mesh distances. | ||
self.stddev = stddev | ||
# The point-to-mesh outlier distance. Distances greater than this value are excluded from the statistics. | ||
self.outlierDistance = outlierDistance | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
from MF.V3.Descriptors.Project import Project as MF_V3_Descriptors_Project_Project | ||
from enum import Enum | ||
from typing import List | ||
|
||
|
||
class Import: | ||
|
||
""" | ||
Import scan descriptor. | ||
""" | ||
class Error(Enum): | ||
|
||
""" | ||
Import error codes. | ||
""" | ||
Unspecified = "Unspecified" # The error is unspecified. | ||
FileNotSupported = "FileNotSupported" # The file format is not supported. | ||
CannotReadFile = "CannotReadFile" # The file format is supported but cannot be read. | ||
MeshIsEmpty = "MeshIsEmpty" # The imported mesh has no faces. | ||
NotEnoughStorage = "NotEnoughStorage" # There is not enough filesystem memory to store the mesh. | ||
|
||
class Imported: | ||
|
||
""" | ||
A file that was successfully imported to the project. | ||
""" | ||
def __init__(self, file: str): | ||
# The file name. | ||
self.file = file | ||
|
||
class Ignored: | ||
|
||
""" | ||
A file that failed to be imported to the project. | ||
""" | ||
def __init__(self, file: str, error: 'Import.Error'): | ||
# The file name. | ||
self.file = file | ||
# The import error code. | ||
self.error = error | ||
|
||
def __init__(self, groups: MF_V3_Descriptors_Project_Project.Group, imported: List['Imported'] = None, ignored: List['Ignored'] = None): | ||
# The updated project group tree. | ||
self.groups = groups | ||
# The list of successfully imported files. | ||
self.imported = imported | ||
# The list of ignored files. | ||
self.ignored = ignored | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
19 changes: 13 additions & 6 deletions
19
three/MF/V3/Settings/CopyGroup.py → three/MF/V3/Settings/CopyGroups.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,28 +1,35 @@ | ||
from typing import List | ||
|
||
|
||
class CopyGroup: | ||
class CopyGroups: | ||
|
||
""" | ||
Copy scan group settings. | ||
Copy scan groups settings. | ||
""" | ||
def __init__(self, sourceIndexes: List[int] = None, targetIndex: int = None, childPosition: int = None, nameSuffix: str = None): | ||
def __init__(self, sourceIndexes: List[int] = None, targetIndex: int = None, childPosition: int = None, nameSuffix: str = None, enumerate: bool = None): | ||
# The indexes of the groups to copy. | ||
self.sourceIndexes = sourceIndexes | ||
""" | ||
The index of the group into which the source group are copied. | ||
If unspecified the copied groups are added to the root of the group tree. | ||
The index of the group into which the source groups are copied. | ||
If unspecified the copied groups are inserted after their respective source groups within the same parent group. | ||
""" | ||
self.targetIndex = targetIndex | ||
""" | ||
The position among the target group's children where the copied groups are inserted. | ||
If unspecified the copied groups are appended to the end of the target group's children. | ||
Ignored if the targetIndex is unspecified or specified but does not exist. | ||
""" | ||
self.childPosition = childPosition | ||
""" | ||
Optional name suffix to append to the copied group names. | ||
If unspecified the names are unchanged. | ||
If unspecified the copied group names are unchanged. | ||
""" | ||
self.nameSuffix = nameSuffix | ||
""" | ||
Append a copy index the copied group names. e.g. ("name-2", "name-3"). Default is true. | ||
If a name suffix is specified then the first copy of each source group is not enumerated, | ||
but subsequent copies are. | ||
""" | ||
self.enumerate = enumerate | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
from typing import List | ||
|
||
|
||
class HeatMap: | ||
|
||
""" | ||
Scan heat map settings. | ||
""" | ||
def __init__(self, sources: List[int] = None, targets: List[int] = None, outlierDistance: float = None): | ||
# Set of source group indexes. | ||
self.sources = sources | ||
# Set of target group indexes. | ||
self.targets = targets | ||
# Threshold for which distances are excluded from the statistics in the descriptor. | ||
self.outlierDistance = outlierDistance | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
from enum import Enum | ||
|
||
|
||
class Import: | ||
|
||
""" | ||
Import mesh settings. | ||
""" | ||
class Unit(Enum): | ||
|
||
""" | ||
Unit of imported mesh positions. | ||
""" | ||
Millimeter = "Millimeter" # Mesh positions in millimeters. | ||
Centimeter = "Centimeter" # Mesh positions in centimeters. | ||
Meter = "Meter" # Mesh positions in meters. | ||
Inch = "Inch" # Mesh positions in inches. | ||
Foot = "Foot" # Mesh positions in feet. | ||
|
||
def __init__(self, name: str = None, scale: float = None, unit: 'Unit' = None, center: bool = None, groupIndex: int = None): | ||
# Optional name of the impored mesh. Ignored if the imported file is a zip archive, in which case the archive filenames are used. | ||
self.name = name | ||
# Optional scale factor for mesh positions. Default is 1.0. | ||
self.scale = scale | ||
# Unit of imported mesh positions. Default is millimeters. Ignored if the scale is specified. | ||
self.unit = unit | ||
# If true the mesh is centered at the world origin. Default is true. | ||
self.center = center | ||
# Project group index in which to add the imported meshes. Default is 0 (root group). | ||
self.groupIndex = groupIndex | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.