Skip to content

Commit

Permalink
updates to doc
Browse files Browse the repository at this point in the history
  • Loading branch information
JonathanAellen committed Jun 13, 2024
1 parent 1f964de commit 51c1203
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -360,18 +360,22 @@ class DiscreteLowRankGaussianProcess[D: NDSpace, DDomain[DD] <: DiscreteDomain[D
}

/**
* realigns the model on the provided part of the domain. By default aligns over the translation and approximately
* over rotation as well. The rotation will always be calculated around the center of the provided ids. Rotations are
* around the cardinal directions.
* realigns the model on the provided part of the domain. Aligns over the translation and, when using
* withExtendedBasis = true, over the extended basis (the default implicit [[RealignExtendedBasis]] adds rotation.
* This rotation will always be calculated around the center of the provided ids. Rotations are around the cardinal
* directions.).
*
* @param ids
* these define the parts of the domain that are aligned to. Depending on the withExtendedBasis parameter has a
* minimum requirements (default basis extension in 3D should be used with >=4 provided ids)
* minimum length requirements (default basis extension in 3D should be used with >=4 provided ids)
* @param withExtendedBasis
* True if the extended basis should be included. By default this uses a rotation extension. that means False makes
* the realignment over translation exact.
* True if the extended basis should be included. By default this uses a rotation extension. False makes the
* realignment only over translation. Translational alignment can be done exactly.
* @param diagonalize
* True if a diagonal basis should be returned. False is cheaper for exclusively drawing samples.
* True if a diagonal basis should be returned. In general, it is strongly recommended to use a diagonal basis. This
* option can be set to false if the resulting model is only sampled from (for example [[sample]] or [[instance]]).
* This makes the same coefficient lead to very similar shapes in the pre- and after realignment model (or exactly
* the same shapes if withExtendedBasis = false).
* @return
* The resulting [[DiscreteLowRankGaussianProcess]] aligned on the provided instances of [[PointId]]
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -258,7 +258,8 @@ case class PointDistributionModel[D: NDSpace, DDomain[D] <: DiscreteDomain[D]](
}

/**
* realigns the [[DiscreteLowRankGaussianProcess]] and returns the resulting [[PointDistributionModel]]
* realigns the internal [[DiscreteLowRankGaussianProcess]] and returns the resulting [[PointDistributionModel]]. this
* calls [[DiscreteLowRankGaussianProcess.realign]].
*/
def realign(ids: IndexedSeq[PointId], withExtendedBasis: Boolean = true, diagonalize: Boolean = true)(using
vectorizer: Vectorizer[EuclideanVector[D]],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,6 @@ import breeze.linalg.DenseMatrix
import scalismo.common.DiscreteDomain
import scalismo.geometry.*

/**
* types the whole discrete low rank gp to make sure that it is applied to the appropriate models. The value type could
* be left out if the user knows what to do.
*/
trait RealignExtendedBasis[D, Value]:

def useTranslation: Boolean
Expand Down

0 comments on commit 51c1203

Please sign in to comment.