- May 15, 2017
-
-
Sreekanth Arikatla authored
-
- May 03, 2017
-
-
Dženan Zukić authored
-
- Apr 21, 2017
-
-
Alexis Girault authored
- Geometry class does not have a position, orientation, scaling combination anymore, but a rigid transformation (translation + rotation) as well as a separate uniform scaling. - The value of that transformation can be changed using setTranslation(), setRotation(), and setScaling(). - scale(), translate(), and rotate() are utility functions which behavior vary based on the parameter TransformType: ConcatenateToTransform, the default value, will concatenate transformations to the rigid transform and signals that the transform has been modified; ApplyToData directly enforces the transformation given to the internal data of the geometry, and signals that the data has been modified (useful to enforce offsets at the beginning of the simulation to avoid concatenating that offset continuously). - A new base class AnalyticalGeomerty is created for Capsule, Plane, Cube and Sphere. It wraps the common attributes to those geometries: a position and an orientation axis. The values of those properties after the transform is applied are also stored to avoid redundant computations. - Subclasses of AnalyticalGeometry often show properties related to size: width, radius, length, etc. Those have their post-transform sibling also. - The Plane has a Normal API which simply wraps the AnalyticalGeometry orientation axis. - The mesh base class also keeps track of a post-transform value for the vertex positions. - Those internal data properties can be set with regular setting methods, which also signals that the internal data has been modified. - Get methods for those properties have a behavior which vary based on the parameter DataType: PostTransform is the default value, and it will return the post transform data, computing it by applying the transform if it was not yet done. - CollisionDetection classes are updated to use that post-transform data - RenderDelegates are updated to update their internal data only when the geometry data has been modified (use VTK sources and transform filter), as well as the rigid transform when that one has been modified also. - Maps, Controllers, and tests are updated to use the correct API: set translation and rotation and not position/orientation. - Update Geometry and Plane test to take into account the change of API: getRotation is now returning a Mat3d instead of a quaternion for less operations, and getNormal will return a normalized vector even if the one set was not normalized. Use `isApprox` to allow for low variability. - Update API in sandbox example - Got rid of the vertexDisplacements variable in the Mesh class, difference between the vertexPosition and the initialVertexPositions: it was requiring additional bookeeping which was not necessary Co-Authored-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com> Signed-off-by:
Alexis Girault <alexis.girault@kitware.com>
-
- Apr 19, 2017
-
-
Nicholas Milef authored
Co-Authored-by:
Alexis Girault <alexis.girault@kitware.com>
-
- Apr 11, 2017
-
-
Shusil Dangi authored
/*========================================================================= Library: iMSTK Copyright (c) Kitware, Inc. & Center for Modeling, Simulation, & Imaging in Medicine, Rensselaer Polytechnic Institute. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.txt Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. =========================================================================*/
-
- Mar 27, 2017
-
-
Sreekanth Arikatla authored
-
- Nov 08, 2016
-
-
Alexis Girault authored
Update Geometry and Sphere to have scaling and radius respectively > 0;
-
- Oct 18, 2016
-
-
Alexis Girault authored
convert tabs to 4 spaces
-
- Aug 19, 2016
-
-
Hong Li authored
- Fix workflow for PBD in SceneManager.cpp. Add/modify related functions for PbdObject/PbdRigidObject/VirtualCoupleingPBDObject. It should work for the most general case where collision/physics/visual meshes are different from each other. - Add LineMesh class and LineMeshRenderDelegate. Add support for LineMesh class in imstkGeometry, imstkMesh, imstkRenderDelegate. - Fix a bug for computeBoundingBox() in imstkMesh. - Fix a bug for applying mapping in TetraTriangleMap. - Fix a bug for computing the center of tetra in TetraTriangleMap.
-
- Jul 25, 2016
-
-
Sreekanth Arikatla authored
Style enforcement and add comments over the entire code
-
- Jul 12, 2016
-
-
Sreekanth Arikatla authored
Enforce consistency with braces
-
- May 27, 2016
-
-
Alexis Girault authored
Use Geometry::Type instead of GeometryType. Use GeometryMap::Type instead of GeometryMapType
-
- Apr 27, 2016
-
-
Alexis Girault authored
1) Clean up print methods 2) Put initialize, print, clear, getVolume on top 3) Add missing overrides 4) Replace extractSurfaceMesh by computeAttachedSurfaceMesh 5) Define Mesh::print 6) Use Mesh::clear in subclasses
-
- Apr 24, 2016
-
-
Sreekanth Arikatla authored
Adds a function to check if a geometry is a mesh. Adds printing to geometry class Stylistic changes in extract mesh class
-
- Apr 22, 2016
-
-
Sreekanth Arikatla authored
Adds comments to the classes and their functions in geometry module
-
- Apr 12, 2016
-
-
Sreekanth Arikatla authored
Adds Tetra-Triangular mesh map. TODO: Code check and add tests
-
- Apr 04, 2016
-
-
Sreekanth Arikatla authored
Adds geometry map base class and isometriMap Signed-off-by:
Sreekanth Arikatla <sreekanth.arikatla@kitware.com>
-
- Mar 29, 2016
-
-
Alexis Girault authored
Also make Geometry class polymorphic by making its destructor virtual.
-
- Mar 28, 2016
-
-
Alexis Girault authored
Conflict existed within VTK.
-
- Mar 24, 2016
-
-
Alexis Girault authored
-
- Mar 23, 2016
-
-
Alexis Girault authored
-
Alexis Girault authored
This base class was needed for storing position and orientation of the geometries. Those global transformation can also be applied to discrete geometries, therefore Geometry and AnalyticalGeometry classes were merged.
-
Alexis Girault authored
-
Alexis Girault authored
-
- Mar 15, 2016
-
-
Alexis Girault authored
Use config based on https://gist.github.com/mkroman/1372117
-
- Mar 10, 2016
-
-
Alexis Girault authored
Also remove headers in cmake files
-
- Mar 09, 2016
-
-
Alexis Girault authored
Uses a dummy implementation of imstkScene to test a module execution in multithreading.
-
Alexis Girault authored
Adding project name (iMSTK)
-
- Mar 08, 2016
-
-
Alexis Girault authored
Skeleton of CMake architecture and of first few classes.
-