Пример #1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="radius"></param>
 /// <param name="parallel"></param>
 /// <param name="weight"></param>
 public SphereCollide(IEnumerable <int> indices, double radius, bool parallel, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Radius   = radius;
     Parallel = parallel;
 }
Пример #2
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="origin"></param>
 /// <param name="normal"></param>
 /// <param name="weight"></param>
 public AbovePlane(IEnumerable <int> indices, Vec3d origin, Vec3d normal, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Origin = origin;
     Normal = normal;
 }
Пример #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="start"></param>
 /// <param name="direction"></param>
 /// <param name="weight"></param>
 public OnLine(IEnumerable <int> indices, Vec3d start, Vec3d direction, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Start     = start;
     Direction = direction;
 }
Пример #4
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="origin"></param>
 /// <param name="normal"></param>
 /// <param name="weight"></param>
 public OnPlane(IEnumerable <int> indices, Vec3d origin, Vec3d normal, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Origin = origin;
     Normal = normal;
 }
Пример #5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="field"></param>
 /// <param name="threshold"></param>
 /// <param name="weight"></param>
 public OnThreshold(IEnumerable <int> indices, GridScalarField3d field, double threshold, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Field     = field;
     Threshold = threshold;
 }
Пример #6
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="target"></param>
 /// <param name="closestPoint"></param>
 /// <param name="parallel"></param>
 /// <param name="weight"></param>
 public OnTarget(IEnumerable <int> indices, T target, Func <T, Vec3d, Vec3d> closestPoint, bool parallel, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Target        = target;
     Parallel      = parallel;
     _closestPoint = closestPoint;
 }
Пример #7
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="interval"></param>
 /// <param name="weight"></param>
 public InsideInterval(IEnumerable <int> indices, Interval3d interval, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Interval = interval;
 }
Пример #8
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="interval"></param>
 /// <param name="weight"></param>
 public InsideInterval(IEnumerable <int> indices, Interval3d interval, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Interval = interval;
 }
Пример #9
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="weight"></param>
 public LineCollide(IEnumerable <int> indices, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
 }
Пример #10
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="direction"></param>
 /// <param name="weight"></param>
 public FalseWeight(IEnumerable <int> indices, Vec3d direction, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Direction = direction;
 }
Пример #11
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="weight"></param>
 public LaplacianSmooth(IEnumerable <int> indices, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
 }
Пример #12
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="weight"></param>
 public EqualizeLengths(IEnumerable <int> indices, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
 }
Пример #13
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="field"></param>
 /// <param name="weight"></param>
 public ForceField(IEnumerable <int> indices, IField3d <Vec3d> field, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Field = field;
 }
Пример #14
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="vector"></param>
 /// <param name="weight"></param>
 public Weight(IEnumerable <int> indices, Vec3d vector, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Vector = vector;
 }
Пример #15
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="point"></param>
 /// <param name="weight"></param>
 public OnPoint(IEnumerable <int> indices, Vec3d point, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Position = point;
 }
Пример #16
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="point"></param>
 /// <param name="weight"></param>
 public OnPoint(IEnumerable <int> indices, Vec3d point, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Point = point;
 }
Пример #17
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="weight"></param>
 public EqualizeLengths(IEnumerable <int> indices, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
 }
Пример #18
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="field"></param>
 /// <param name="weight"></param>
 public ForceField(IEnumerable <int> indices, IField3d <Vec3d> field, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Field = field;
 }
Пример #19
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="weight"></param>
 public Colinear(IEnumerable <int> indices, double weight = 1.0)
     : base(weight)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
 }
Пример #20
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="indices"></param>
 /// <param name="force"></param>
 /// <param name="weight"></param>
 public Weight(IEnumerable <int> indices, Vec3d force, double weight = 1.0, int capacity = DefaultCapacity)
     : base(weight, capacity)
 {
     Handles.AddRange(indices.Select(i => new H(i)));
     Force = force;
 }