That must be a typo. Of course Rhino geometry calculations are unit-based
Yes I understand now. The tolerance setting when opening SWX files is not correct. I do not know if that is a Rhino bug or a SWX bug. I have seen this bug myself many times recently (the bug has only been around for about 6 months). This bug makes it more difficult to open SWX Step files reliably.
The workaround for this bug s to use “Import” command to bring in SWX geometry,
So you would start with a template file with tolerance set to .01 and units mm and then import the SWX data. Importing geometry won’t change the tolerance to something ridiculous.
To answer your original question, the tolerance your plug-in should use for its numerical algorithms is the Rhino absolute tolerance. Keep in mind that your users will not likely be working on a SWX STEP file that they opened. The vast majority of mm files will have a tolerance of .01-.001. But if the user is making something really large like a building or a ship they may set the tolerance to 1.0-0.1 mm or if they are modeling something very tiny (say smaller than a mm) they may set the tolerance to smaller than .001 mm.
It is important that your plugin use the same tolerance that the user sets for absolute tolerance . The reason is that if you use a tolerance that is looser than the user’s tolerance then your geometry will likely not join to the user’s geometry and if your tolerance is smaller than the user tolerance it will produce curves and surfaces that are much denser than they need to be.
If your numerical algorithms only work within a narrow range of tolerance you should give the user a pop-up message box that explains this fact. The user can then adjust the tolerance, units or even scale the model size so that the can work within the plugins tolerance range. One of the things Rhino users must learn very early is to set the units and tolerance so as to achieve the best results for their own particular modeling needs,