 |
|
|
 |
|
SMLib SMLib Our flagship product built upon TSNLib provides fully functional non-manifold topological structure and solid modeling functionality including the ability to perform NURBS boolean operations, fillets, etc.
TSNLib TSNLib Built on top of GSNLib supporting trimmed surface representations.
GSNLib GSNLib A basic curve and surface NURBS library. GSNLib provides a useful interface to NLib while adding value as well. Includes curve/curve and surface/surface intersection and polygon modeling.
NLib NLib A comprehensive BSpline NURBs library fully supporting curves, surfaces, and volumes with an extensive set of shape query and construction tools.
VSLib VSLib Provides deformable modeling as part of a library using the constrained optimization techniques of the calculus of variations. The library supports several very different geometric operations.
SDLib SDLib Subdivision surface source code library that creates and modifies complex shapes with hierarchical Catmull-Clark surfaces.
PolyMLib PolyMLib Polygonal based geometric modeling to repair, optimize, review and edit triangle mesh models. Analyze surface properties, repair and optimize surface meshes.
Data Translators Data Translators NURBS based geometry translators to interface between Nlib, GSNLib, TSNLib, SMLib and IGES, STEP, SAT, VDAFS, OpenNURBS, and Parasolid XT.
|
|
 |
|
|
 |
|
|
|
 |
software support - First class support for first class software... |
 |
Support supplied as standard C and C++ source code. Full, unlimited Web, e-mail and phone support which includes bug-fixes and all upgrades. |
| Key Benefits |
 |
- Proven expertise in graphical and mathematical technology.
- In-depth knowledge of the software.
- Commitment to customer satisfaction.
- SMS acts as your development partner.
|
| Capabilities |
 |
- Extensive documentation
- Available online as well as downloadable off the Web.
|
- Online help through online tutorials
- Authorized access to invaluable tutorial material as well as a wealth of examples to guide an understanding of the rich capabilites in a natural way.
|
- Quick response to problems
- Full unlimited phone and e-mail support.
|
| Support Process |
 |
- When a customers reports a bug to SMS it is usually sent to support@smlib.com. The SMS support staff is usually able to do the initial investigation within 24 hours.
- The initial investigation is to verify that we can duplicate the problem. So, in most cases, the user should submit input data and if possible the section of code that calls the failing function.
- The support person that is working on the reported bug may then go back and forth directly with the user that reported the bug, usually by email, sometimes by phone, until the problem is resolved.
- Once the problem has been resolved, if the fix required code changes, we immediately send the developer the revised code and that code will then be in all future releases. This is one of the very important features of the customer having the source code since the developer does not have to wait for the next release to see if the fix actually works.
- This process has worked very well and our goal is to continue to supply first class support to all our customers.
|
| Bug reporting tips |
 |
Outlined below are several ideal methods or tips by which to describe bugs and to communicate with support. We realize that many bugs are unique and they must be handled individually, but the notes below provide a good guideline.
It is strongly suggested that smlib users compile and run the ui_test utility program (Smlib/ui_test/ui_test.sln) to aid in testing and bug reporting. This is a valuable visualization tool that allows users to understand smlib code implementation and test specific examples. By testing or reproducing a bug in ui_test, a user can be sure the issue exists in smlib. In other words, the user's application will not be needed to reproduce the bug. This method also ensures that the user and SMS support are running the same code with the same input parameters (tolerances, etc). This method also makes it easier for us to include the issue in our regression test suite.
Once compiled, ui_test can perform many tasks without recompiling. Besides reading object files and displaying them with rotate, pan, zoom, etc., ui_test can tessellate objects, repair objects, run scripted demonstrations, and redisplay objects shaded or with a control polygon, etc. Ui_test can also boolean two objects.
We have a number of example test programs under Smlib/Examples. These example functions simplify a test case or a bug report by testing only one smlib function at a time. For example, they might read object 1, read object 2, and perform an operation. These not only provide useful example code, but each one can be included in the ui_test project to demonstrate results. The file "Template.cpp" is shipped with ui_test as a very basic example. Users are encouraged to substitute "Template.cpp" with their own "Test" functions by copying example code or their own application code and reading smlib objects from native files that can then be used as input into smlib functions.
Although, it is possible to provide support with geometry data in other file formats (iges, step, etc), it is preferred to send smlib native ASCII files. This practice will eliminate the possibility that the issue occurs during translation. Please use WriteToFile() on any smlib object to create a file with the file extensions listed below: |
IwPart
IwBrep
IwFace
IwSurface
IwCurve/IwBSplineCurve
Array of IwCurves |
.iwp
.iwb
.iwf
.iws
.iwc
.iwcs |
|
Please do not use .txt nor .dat
When writing individual smlib objects, the header should not be written to file. This can be accomplished by passing in "true" for bSkipHeader.
Prog_test is a way of testing for regressions. Most users will not need or use prog_test except possibly as code examples.
|
|
| Back To Top |
|
|
 |