-
Notifications
You must be signed in to change notification settings - Fork 196
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Basic support for Yaskawa Motoman GP180-120 6DOF arm (#277)
Squashed commits: * added basic support for Yaskawa Motoman GP180-120 6DOF arm; meshes are derived from official Yaskawa 3D model files; collision meshes are convex hulls; URDF does not contain correct effort limit values yet * correction of tool0 coordinate system orientation to be the same as Yaskawa controller flange coordinate system * Use Jade+ xacro on Indigo. * renamed directory for package * changed package name to motoman_gp180_support in all places (GP180 is robot series, 120 is variant of this series); moved meshes to subdirectory for GP180-120 variant; renamed meshes to lowercase * removed DEG2RAD and used Python expressions in xacro instead * further renamed meshes to have same names as links in URDF * scaled and rotated meshes, with origin points translated to correct location; scaling, rotating and translating origin point in URDF no longer needed; added tools directory with script and README file describing automation of the processing of the source meshes (derived from Yaskawa 3D model STEP file) * moved mesh processing scripts to subdirectory for robot manipulator variant, updated README for them * shifted meshes origin points and joints origin translations so that the joints are "in line" with only one axis translation between two neighboring joints (exception is link_3_u for upper arm, there is 2-axis translation) * better collision meshes; scripts for MeshLab and README about automatic collision meshes generation from visual meshes * Correction on urdf and model orientation and direction of motion. The URDF was changed to rotate the whole model so that the X-axis point forward and kinematic model adjusted to match the standard Yaskawa model and dimensions. The mesh were then adjusted to realign properly with the new kinematic model. The direction of motion for each axis was also corrected to match the real robot motion. Finally, the visual meshes were reduce by 50% to reduce the display processing. * modified automated processing of meshes to be usable with URDF changes made by Eric Marcil in last commit; added simplification step of visual meshes to 50% faces * updated effort limits to Max Acc/Dec Torque [Nm] values from spreadsheet provided by Eric Marcil * added motoman_gp180_support to list of dependencies of the metapackage * Remove superfluous comments from xacro macro. * Split J4->J5 transform into two. This avoids translations in two dimensions for 'joint_4_r'. * Place tool0 on flange. So move final translation (from J5->J6) and make J6->tool0 transform identity. * Add a ROS-I maintainer. * Fix tool readme list formatting. * Hide directory keepmes. * Reduce meshes some more. An additional approx 2MB reduction.
- Loading branch information
1 parent
cc7d9d9
commit 197d2f8
Showing
41 changed files
with
652 additions
and
0 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
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,15 @@ | ||
cmake_minimum_required(VERSION 2.8.3) | ||
|
||
project(motoman_gp180_support) | ||
|
||
find_package(catkin REQUIRED) | ||
|
||
catkin_package() | ||
|
||
if (CATKIN_ENABLE_TESTING) | ||
find_package(roslaunch REQUIRED) | ||
roslaunch_add_file_check(test/launch_test.xml) | ||
endif() | ||
|
||
install(DIRECTORY config launch meshes urdf | ||
DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}) |
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 @@ | ||
controller_joint_names: ['joint_1_s', 'joint_2_l', 'joint_3_u', 'joint_4_r', 'joint_5_b', 'joint_6_t'] |
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,3 @@ | ||
<launch> | ||
<param name="robot_description" command="$(find xacro)/xacro --inorder '$(find motoman_gp180_support)/urdf/gp180_120.xacro'" /> | ||
</launch> |
19 changes: 19 additions & 0 deletions
19
motoman_gp180_support/launch/robot_interface_streaming_gp180_120.launch
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,19 @@ | ||
<!-- | ||
Manipulator specific version of 'robot_interface_streaming.launch'. | ||
Defaults provided for gp180_120: | ||
- joints | ||
Usage: | ||
robot_interface_streaming_gp1180_120.launch robot_ip:=<value> controller:=<yrc1000> | ||
--> | ||
<launch> | ||
<arg name="robot_ip" /> | ||
|
||
<!-- controller: Controller name (yrc1000) --> | ||
<arg name="controller" /> | ||
|
||
<rosparam command="load" file="$(find motoman_gp180_support)/config/joint_names_gp180_120.yaml" /> | ||
|
||
<include file="$(find motoman_driver)/launch/robot_interface_streaming_$(arg controller).launch"> | ||
<arg name="robot_ip" value="$(arg robot_ip)" /> | ||
</include> | ||
</launch> |
25 changes: 25 additions & 0 deletions
25
motoman_gp180_support/launch/robot_state_visualize_gp180_120.launch
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,25 @@ | ||
<!-- | ||
Manipulator specific version of the state visualizer. | ||
Defaults provided for gp180_120: | ||
- joints | ||
Usage: | ||
robot_state_visualize_gp180_120.launch robot_ip:=<value> controller:=<yrc1000> | ||
--> | ||
<launch> | ||
<arg name="robot_ip" /> | ||
|
||
<!-- controller: Controller name (yrc1000) --> | ||
<arg name="controller" /> | ||
|
||
<rosparam command="load" file="$(find motoman_gp180_support)/config/joint_names_gp180_120.yaml" /> | ||
|
||
<include file="$(find motoman_driver)/launch/robot_state_$(arg controller).launch"> | ||
<arg name="robot_ip" value="$(arg robot_ip)" /> | ||
</include> | ||
|
||
<node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" /> | ||
|
||
<include file="$(find motoman_gp180_support)/launch/load_gp180_120.launch" /> | ||
|
||
<node name="rviz" pkg="rviz" type="rviz" args="-d $(find industrial_robot_client)/config/robot_state_visualize.rviz" required="true" /> | ||
</launch> |
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,10 @@ | ||
<launch> | ||
<include file="$(find motoman_gp180_support)/launch/load_gp180_120.launch" /> | ||
|
||
<param name="use_gui" value="true" /> | ||
|
||
<node name="joint_state_publisher" pkg="joint_state_publisher" type="joint_state_publisher" /> | ||
<node name="robot_state_publisher" pkg="robot_state_publisher" type="robot_state_publisher" /> | ||
|
||
<node name="rviz" pkg="rviz" type="rviz" args="-d $(find industrial_robot_client)/config/robot_state_visualize.rviz" required="true" /> | ||
</launch> |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
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,54 @@ | ||
<?xml version="1.0"?> | ||
<?xml-model href="http://download.ros.org/schema/package_format2.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?> | ||
<package format="2"> | ||
<name>motoman_gp180_support</name> | ||
<version>0.1.0</version> | ||
<description> | ||
<p>ROS-Industrial support for the Motoman GP180 (and variants).</p> | ||
<p> | ||
This package contains configuration data, 3D models and launch files | ||
for Motoman GP180 series of manipulators. | ||
</p> | ||
<p> | ||
<b>Specifications</b> | ||
</p> | ||
<ul> | ||
<li>GP180-120 - Default</li> | ||
</ul> | ||
<p> | ||
Joint limits and maximum joint velocities are based on the information | ||
found in the online documentation files for the robot (GP180-120_2D.zip | ||
and GP180-120_3D.zip from | ||
https://www.cz.yaskawa.eu.com/en/products/robotics/motoman-robots/productdetail/product/gp180-120/) | ||
All urdfs are based on the default motion and joint velocity limits, | ||
unless noted otherwise. | ||
</p> | ||
<p> | ||
Before using any of the configuration files and / or meshes included | ||
in this package, be sure to check they are correct for the particular | ||
robot model and configuration you intend to use them with. | ||
</p> | ||
</description> | ||
<author>Jakub Marsik</author> | ||
<maintainer email="[email protected]">Jakub Marsik (KM Robotics)</maintainer> | ||
<maintainer email="[email protected]">G.A. vd. Hoorn (TU Delft Robotics Institute)</maintainer> | ||
<license>BSD</license> | ||
|
||
<url type="website">http://wiki.ros.org/motoman_gp180_support</url> | ||
<url type="bugtracker">https://github.com/ros-industrial/motoman/issues</url> | ||
<url type="repository">https://github.com/ros-industrial/motoman</url> | ||
|
||
<buildtool_depend>catkin</buildtool_depend> | ||
|
||
<test_depend>roslaunch</test_depend> | ||
|
||
<exec_depend>joint_state_publisher</exec_depend> | ||
<exec_depend>motoman_driver</exec_depend> | ||
<exec_depend>robot_state_publisher</exec_depend> | ||
<exec_depend>rviz</exec_depend> | ||
<exec_depend>xacro</exec_depend> | ||
|
||
<export> | ||
<architecture_independent/> | ||
</export> | ||
</package> |
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,51 @@ | ||
<!-- | ||
launch_test.xml - ROSlaunch tests | ||
Usage Instructions: | ||
1. Add the following to your CMakeLists.txt: | ||
find_package(roslaunch) | ||
roslaunch_add_file_check(test/launch_test.xml) | ||
2. Create a test directory under your package | ||
3. Add the "launch_text.xml" file and fill out the test below. Use the | ||
following conventions: | ||
a. Encapsulate each launch file test in it's own namespace. By | ||
convention the namespace should have the same name as the launch | ||
file (minus ".launch" extension) | ||
b. Create tests for each possible combination of parameters. Utilize | ||
sub-namespaces under the main namespace. | ||
Notes: | ||
1. XML extension is used in order to avoid beinging included | ||
in roslaunch auto-complete. | ||
2. Group tags with namespaces are used to avoid node name collisions when | ||
testing multpile launch files | ||
--> | ||
<launch> | ||
<arg name="req_arg" value="default" /> | ||
<arg name="yrc1000" value="yrc1000" /> | ||
|
||
<group ns="load_gp180_120"> | ||
<include file="$(find motoman_gp180_support)/launch/load_gp180_120.launch" /> | ||
</group> | ||
|
||
<group ns="test_gp180_120"> | ||
<include file="$(find motoman_gp180_support)/launch/test_gp180_120.launch" /> | ||
</group> | ||
|
||
<group ns="robot_interface_streaming_gp180_120"> | ||
<group ns="yrc1000"> | ||
<include file="$(find motoman_gp180_support)/launch/robot_interface_streaming_gp180_120.launch"> | ||
<arg name="robot_ip" value="$(arg req_arg)" /> | ||
<arg name="controller" value="$(arg yrc1000)" /> | ||
</include> | ||
</group> | ||
</group> | ||
|
||
<group ns="robot_state_visualize_gp180_120"> | ||
<group ns="yrc1000"> | ||
<include file="$(find motoman_gp180_support)/launch/robot_state_visualize_gp180_120.launch"> | ||
<arg name="robot_ip" value="$(arg req_arg)" /> | ||
<arg name="controller" value="$(arg yrc1000)" /> | ||
</include> | ||
</group> | ||
</group> | ||
|
||
</launch> |
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 @@ | ||
*.stl |
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,52 @@ | ||
# Mesh conversion | ||
|
||
## Visual meshes | ||
|
||
You can use the tool `stl_cmd` (install from https://github.com/AllwineDesigns/stl_cmd) to process | ||
original meshes saved from Yaskawa 3D model files (STEP file) as individual STL files named after | ||
corresponding STEP file parts. You can prepare those individual STL files by opening the STEP file | ||
in Fusion 360 and saving each component as an STL (right click on the component and choose Save as STL). | ||
|
||
Save those files in the subdirectory `input` of the directory named after specific robot manipulator | ||
variant: | ||
|
||
* BASE_AXIS.stl | ||
* S_AXIS.stl | ||
* L_AXIS.stl | ||
* U_AXIS.stl | ||
* R_AXIS.stl | ||
* B_AXIS.stl | ||
* T_AXIS.stl | ||
|
||
And run `./process1a-stlcmd.sh` script. It will do following things with all meshes: | ||
|
||
* scale the mesh so that the units are "meters" | ||
* rotate the mesh so that the Z+ axis points up and X+ axis points in the correct direction | ||
* translate the origin point so that it's in the point of connection of the link to the previous link | ||
* save the file with proper file name used in the URDF to `output` subdirectory | ||
|
||
Then run `./process1b-simplify.sh` script to simplify visual meshes to 50% of faces. It uses MeshLab, see | ||
comments about it below in section about collision meshes. | ||
|
||
After processing just copy files from `output_visual` subdirectory to the subdirectory named after specific | ||
robot manipulator variant of the `meshes` directory of this package. Use correct subdirectory `visual`. | ||
|
||
## Collision meshes | ||
|
||
You can use MeshLab to process visual meshes (created in previous step) to collision meshes automatically. | ||
Unfortunately it's not as simple as processing visual meshes mentioned above. There are more versions of | ||
MeshLab and they use different names and in some cases parameters for some of the filters used to do this | ||
conversion. Newer versions of MeshLab are not so easy to get on Ubuntu. You can try to use MeshLab PPA on | ||
https://launchpad.net/~zarquon42/+archive/ubuntu/meshlab. | ||
|
||
Even with the right version of MeshLab some of the filters coredump when used from command line (through | ||
meshlabserver) :( | ||
|
||
Originally I was planning to do a convex hull, some simplification, inversion of faces orientation (sometimes | ||
needed, depends probably on the location of the origin point, if it's on the inside of the mesh body or not) | ||
and then do an offset to get slightly "bigger" mesh for collision checking. The filter used to perform the | ||
offset (Uniform Mesh Resampling) always coredumps when used from command line. Therefore I made the collision | ||
meshes without the offset for now. | ||
|
||
You can run `./process2.sh` to process all visual meshes (from previous step) into collision meshes, then copy | ||
them to correct `collision` subdirectory of this package. |
Empty file.
Empty file.
Empty file.
9 changes: 9 additions & 0 deletions
9
motoman_gp180_support/tools/process_meshes/gp180_120/process1a-stlcmd.sh
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,9 @@ | ||
#/bin/bash | ||
|
||
stl_transform -rx 90 -rz 180 -s 0.001 input/BASE_AXIS.stl output_visual/base_link.stl | ||
stl_transform -rx 90 -rz 180 -s 0.001 -tz -0.65 input/S_AXIS.stl output_visual/link_1_s.stl | ||
stl_transform -rx 90 -rz 180 -s 0.001 -tx -0.325 -tz -0.65 input/L_AXIS.stl output_visual/link_2_l.stl | ||
stl_transform -rx 90 -rz 180 -s 0.001 -tx -0.325 -tz -1.8 input/U_AXIS.stl output_visual/link_3_u.stl | ||
stl_transform -rx 90 -rz 180 -s 0.001 -tx -0.325 -tz -2.1 input/R_AXIS.stl output_visual/link_4_r.stl | ||
stl_transform -rx 90 -rz 180 -s 0.001 -tx -1.915 -tz -2.1 input/B_AXIS.stl output_visual/link_5_b.stl | ||
stl_transform -rx 90 -rz 180 -s 0.001 -tx -2.140 -tz -2.1 input/T_AXIS.stl output_visual/link_6_t.stl |
34 changes: 34 additions & 0 deletions
34
motoman_gp180_support/tools/process_meshes/gp180_120/process1b-simplify.sh
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,34 @@ | ||
#/bin/bash | ||
|
||
meshlabserver -i output_visual/base_link.stl -o tmp/0.stl -s ../meshlab_00_simplify_50p.mlx | ||
cp -f tmp/0.stl output_visual/base_link.stl | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_1_s.stl -o tmp/0.stl -s ../meshlab_00_simplify_50p.mlx | ||
cp -f tmp/0.stl output_visual/link_1_s.stl | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_2_l.stl -o tmp/0.stl -s ../meshlab_00_simplify_50p.mlx | ||
cp -f tmp/0.stl output_visual/link_2_l.stl | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_3_u.stl -o tmp/0.stl -s ../meshlab_00_simplify_50p.mlx | ||
cp -f tmp/0.stl output_visual/link_3_u.stl | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_4_r.stl -o tmp/0.stl -s ../meshlab_00_simplify_50p.mlx | ||
cp -f tmp/0.stl output_visual/link_4_r.stl | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_5_b.stl -o tmp/0.stl -s ../meshlab_00_simplify_50p.mlx | ||
cp -f tmp/0.stl output_visual/link_5_b.stl | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_6_t.stl -o tmp/0.stl -s ../meshlab_00_simplify_50p.mlx | ||
cp -f tmp/0.stl output_visual/link_6_t.stl |
39 changes: 39 additions & 0 deletions
39
motoman_gp180_support/tools/process_meshes/gp180_120/process2.sh
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,39 @@ | ||
#/bin/bash | ||
|
||
meshlabserver -i output_visual/base_link.stl -o tmp/0.stl -s ../meshlab_01_convexhull.mlx | ||
meshlabserver -i tmp/0.stl -o tmp/1.stl -s ../meshlab_02_invert_faces.mlx | ||
meshlabserver -i tmp/1.stl -o output_collision/base_link.stl -s ../meshlab_03_no_offset_1000t.mlx | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_1_s.stl -o tmp/0.stl -s ../meshlab_01_convexhull.mlx | ||
meshlabserver -i tmp/0.stl -o output_collision/link_1_s.stl -s ../meshlab_03_no_offset_1000t.mlx | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_2_l.stl -o tmp/0.stl -s ../meshlab_01_convexhull.mlx | ||
meshlabserver -i tmp/0.stl -o output_collision/link_2_l.stl -s ../meshlab_03_no_offset_300t.mlx | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_3_u.stl -o tmp/0.stl -s ../meshlab_01_convexhull.mlx | ||
meshlabserver -i tmp/0.stl -o tmp/1.stl -s ../meshlab_02_invert_faces.mlx | ||
meshlabserver -i tmp/1.stl -o output_collision/link_3_u.stl -s ../meshlab_03_no_offset_300t.mlx | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_4_r.stl -o tmp/0.stl -s ../meshlab_01_convexhull.mlx | ||
meshlabserver -i tmp/0.stl -o tmp/1.stl -s ../meshlab_02_invert_faces.mlx | ||
meshlabserver -i tmp/1.stl -o output_collision/link_4_r.stl -s ../meshlab_03_no_offset_300t.mlx | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_5_b.stl -o tmp/0.stl -s ../meshlab_01_convexhull.mlx | ||
meshlabserver -i tmp/0.stl -o tmp/1.stl -s ../meshlab_02_invert_faces.mlx | ||
meshlabserver -i tmp/1.stl -o output_collision/link_5_b.stl -s ../meshlab_03_no_offset_300t.mlx | ||
|
||
read | ||
|
||
meshlabserver -i output_visual/link_6_t.stl -o tmp/0.stl -s ../meshlab_01_convexhull.mlx | ||
meshlabserver -i tmp/0.stl -o tmp/1.stl -s ../meshlab_02_invert_faces.mlx | ||
meshlabserver -i tmp/1.stl -o output_collision/link_6_t.stl -s ../meshlab_03_no_offset_300t.mlx |
Empty file.
20 changes: 20 additions & 0 deletions
20
motoman_gp180_support/tools/process_meshes/meshlab_00_simplify_50p.mlx
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,20 @@ | ||
<!DOCTYPE FilterScript> | ||
<FilterScript> | ||
<filter name="Remove Duplicate Vertices"/> | ||
<filter name="Simplification: Quadric Edge Collapse Decimation"> | ||
<Param value="0" type="RichInt" name="TargetFaceNum" description="Target number of faces" tooltip="The desired final number of faces."/> | ||
<Param value="0.5" type="RichFloat" name="TargetPerc" description="Percentage reduction (0..1)" tooltip="If non zero, this parameter specifies the desired final size of the mesh as a percentage of the initial size."/> | ||
<Param value="1" type="RichFloat" name="QualityThr" description="Quality threshold" tooltip="Quality threshold for penalizing bad shaped faces.<br>The value is in the range [0..1]
 0 accept any kind of face (no penalties),
 0.5 penalize faces with quality < 0.5, proportionally to their shape
"/> | ||
<Param value="true" type="RichBool" name="PreserveBoundary" description="Preserve Boundary of the mesh" tooltip="The simplification process tries to do not affect mesh boundaries during simplification"/> | ||
<Param value="1" type="RichFloat" name="BoundaryWeight" description="Boundary Preserving Weight" tooltip="The importance of the boundary during simplification. Default (1.0) means that the boundary has the same importance of the rest. Values greater than 1.0 raise boundary importance and has the effect of removing less vertices on the border. Admitted range of values (0,+inf). "/> | ||
<Param value="true" type="RichBool" name="PreserveNormal" description="Preserve Normal" tooltip="Try to avoid face flipping effects and try to preserve the original orientation of the surface"/> | ||
<Param value="false" type="RichBool" name="PreserveTopology" description="Preserve Topology" tooltip="Avoid all the collapses that should cause a topology change in the mesh (like closing holes, squeezing handles, etc). If checked the genus of the mesh should stay unchanged."/> | ||
<Param value="false" type="RichBool" name="OptimalPlacement" description="Optimal position of simplified vertices" tooltip="Each collapsed vertex is placed in the position minimizing the quadric error.
 It can fail (creating bad spikes) in case of very flat areas. 
If disabled edges are collapsed onto one of the two original vertices and the final mesh is composed by a subset of the original vertices. "/> | ||
<Param value="true" type="RichBool" name="PlanarQuadric" description="Planar Simplification" tooltip="Add additional simplification constraints that improves the quality of the simplification of the planar portion of the mesh."/> | ||
<Param value="false" type="RichBool" name="QualityWeight" description="Weighted Simplification" tooltip="Use the Per-Vertex quality as a weighting factor for the simplification. The weight is used as a error amplification value, so a vertex with a high quality value will not be simplified and a portion of the mesh with low quality values will be aggressively simplified."/> | ||
<Param value="true" type="RichBool" name="AutoClean" description="Post-simplification cleaning" tooltip="After the simplification an additional set of steps is performed to clean the mesh (unreferenced vertices, bad faces, etc)"/> | ||
<Param value="false" type="RichBool" name="Selected" description="Simplify only selected faces" tooltip="The simplification is applied only to the selected set of faces.
 Take care of the target number of faces!"/> | ||
</filter> | ||
<filter name="Re-Compute Face Normals"/> | ||
<filter name="Normalize Face Normals"/> | ||
</FilterScript> |
Oops, something went wrong.