1. 25 Apr, 2017 1 commit
  2. 22 Apr, 2017 1 commit
  3. 21 Apr, 2017 4 commits
    • Sreekanth Arikatla's avatar
    • Alexis Girault's avatar
      BUG: Add texture coordinates if they exit · ba7005a9
      Alexis Girault authored
      An array of texture coordinates was added to the surface mesh read
      by AssimpIO even if there were no texture coordinates found.
    • Alexis Girault's avatar
      ENH: Refactor geometry transformations · 648daf5c
      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's avatarSreekanth Arikatla <sreekanth.arikatla@kitware.com>
      Signed-off-by: Alexis Girault's avatarAlexis Girault <alexis.girault@kitware.com>
    • Sreekanth Arikatla's avatar
  4. 19 Apr, 2017 6 commits
  5. 18 Apr, 2017 2 commits
  6. 17 Apr, 2017 3 commits
  7. 14 Apr, 2017 5 commits
  8. 13 Apr, 2017 2 commits
    • Alexis Girault's avatar
      Merge branch 'module-callbacks' into 'master' · c5874378
      Alexis Girault authored
      Module callbacks
      See merge request !165
    • Alexis Girault's avatar
      ENH: Use UPS through lambdas · 4bcccb7b
      Alexis Girault authored
      The current integration of UPS within the module class did not allow
      to display the UPS value in any easy and standardized way.
      This commits simplifies the Module class by removing its dependency to
      the UPSCounter class, and shows how to easily query the UPS using the
      callback mechanism on any module (here: sceneManager for pbd physics and
      fem physics examples).
  9. 12 Apr, 2017 7 commits
  10. 11 Apr, 2017 2 commits
    • Alexis Girault's avatar
      Merge branch 'fixCopyright' into 'master' · 6777f697
      Alexis Girault authored
      Fix copyright
      See merge request !164
    • Shusil Dangi's avatar
      ENH: Changes/Adds the standard Copyright info for all files · 8259ffcc
      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
         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.
  11. 10 Apr, 2017 4 commits
  12. 08 Apr, 2017 1 commit
  13. 07 Apr, 2017 2 commits