Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
Give vector coordinates to three decimal places?
Lee_Hesketh
Member, Developers Posts: 148 ✭✭✭
Hi is there a way to specify how many decimal places vector coordinates are because my script won't work since the coordinates are 0.3300000000000027 and not simply 0.330.
Thanks
Lee Hesketh
Thanks
Lee Hesketh
There are 10 types of people in the world. Those who know binary, those who don't and those who didn't expect base 3!
0
Best Answers
-
kevin_o_toole_1 Onshape Employees, Developers, HDM Posts: 565When comparing geometric variables to one another (Vector, ValueWithUnits, Plane, Line, etc.), good practice is to use tolerantEquals, rather than the == operator. tolerantEquals simply checks whether two values are equal within our standard modeling tolerance, which is 10^-8 meters. Your numbers are well within that range, so tolerantEquals will return true.
Overloads for tolerantEquals are defined on all the standard geometric data structures in the Onshape Standard Library, including Vectors.
This is a common pain point, and in a future version of FeatureScript we intend to generate a warning when using the == operator to compare two values that are nearly equal, and suggest tolerantEquals as a solution.
6 -
kevin_o_toole_1 Onshape Employees, Developers, HDM Posts: 565For Vectors p1 and p2, you can use tolerantEquals(p1[0], p2[0])5
Answers
Overloads for tolerantEquals are defined on all the standard geometric data structures in the Onshape Standard Library, including Vectors.
This is a common pain point, and in a future version of FeatureScript we intend to generate a warning when using the == operator to compare two values that are nearly equal, and suggest tolerantEquals as a solution.