// Token: 0x060004CA RID: 1226 RVA: 0x00018AA0 File Offset: 0x00016CA0 public static Segment3 Transform(this AffineTransform3 transformer, Segment3 segment) { Vector3 origin = transformer.Transform(segment.Origin); UnitVector3 direction = transformer.Transform(segment.Direction); return(new Segment3(origin, direction, transformer.Scale * segment.Extent)); }
// Token: 0x060004CC RID: 1228 RVA: 0x00018B20 File Offset: 0x00016D20 public static Plane3 Transform(this AffineTransform3 transformer, Plane3 plane) { UnitVector3 planeNormal = transformer.Transform(plane.Normal); Vector3 pointOnThePlane = transformer.Transform(plane.Normal * plane.Constant); return(new Plane3(planeNormal, pointOnThePlane)); }
// Token: 0x060004C6 RID: 1222 RVA: 0x000189E0 File Offset: 0x00016BE0 public static Line3 Transform(this AffineTransform3 transformer, Line3 line) { Vector3 origin = transformer.Transform(line.Origin); UnitVector3 direction = transformer.Transform(line.Direction); return(new Line3(origin, direction)); }
// Token: 0x060004C8 RID: 1224 RVA: 0x00018A40 File Offset: 0x00016C40 public static Ray3 Transform(this AffineTransform3 transformer, Ray3 ray) { Vector3 origin = transformer.Transform(ray.Origin); UnitVector3 direction = transformer.Transform(ray.Direction); return(new Ray3(origin, direction)); }
// Token: 0x060004C2 RID: 1218 RVA: 0x000188F8 File Offset: 0x00016AF8 public static Circle3 Transform(this AffineTransform3 transformer, Circle3 circle) { AffineTransform3 source = new AffineTransform3(circle.UnitU, circle.UnitV, circle.Normal, circle.Center); AffineTransform3 affineTransform = transformer.Transform(source); return(new Circle3(affineTransform.Origin, affineTransform.AxisX, affineTransform.AxisY, affineTransform.AxisZ, circle.Radius * transformer.Scale)); }
// Token: 0x060004BF RID: 1215 RVA: 0x000187DC File Offset: 0x000169DC public static Rectangle3 Transform(this AffineTransform3 transformer, Rectangle3 rectangle) { AffineTransform3 source = new AffineTransform3(rectangle.Axis0, rectangle.Axis1, rectangle.Axis0.UnitCross(rectangle.Axis1), rectangle.Center, 1.0); AffineTransform3 affineTransform = transformer.Transform(source); return(new Rectangle3(affineTransform.Origin, affineTransform.AxisX, affineTransform.AxisY, rectangle.Extent0 * transformer.Scale, rectangle.Extent1 * transformer.Scale)); }
// Token: 0x060004BD RID: 1213 RVA: 0x000186E0 File Offset: 0x000168E0 public static Box3 Transform(this AffineTransform3 transformer, Box3 box) { AffineTransform3 source = new AffineTransform3(box.Axis0, box.Axis1, box.Axis2, box.Center); AffineTransform3 affineTransform = transformer.Transform(source); return(new Box3(affineTransform.Origin, affineTransform.AxisX, affineTransform.AxisY, affineTransform.AxisZ, box.Extent0 * transformer.Scale, box.Extent1 * transformer.Scale, box.Extent2 * transformer.Scale)); }
// Token: 0x060004BB RID: 1211 RVA: 0x0001847C File Offset: 0x0001667C public static AxisAlignedBox3 Transform(this AffineTransform3 transformer, AxisAlignedBox3 input) { Vector3 vector = transformer.Transform(input.Center - input.Extents); Vector3 vector2 = vector; foreach (Vector3 right in new List <Vector3> { new Vector3(input.ExtentX, -input.ExtentY, -input.ExtentZ), new Vector3(-input.ExtentX, input.ExtentY, -input.ExtentZ), new Vector3(input.ExtentX, input.ExtentY, -input.ExtentZ), new Vector3(-input.ExtentX, -input.ExtentY, input.ExtentZ), new Vector3(input.ExtentX, -input.ExtentY, input.ExtentZ), new Vector3(-input.ExtentX, input.ExtentY, input.ExtentZ), new Vector3(input.ExtentX, input.ExtentY, input.ExtentZ) }) { Vector3 value = transformer.Transform(input.Center + right); vector = Vector3.Min(vector, value); vector2 = Vector3.Max(vector2, value); } return(new AxisAlignedBox3(vector, vector2)); }
// Token: 0x060004B9 RID: 1209 RVA: 0x00018420 File Offset: 0x00016620 public static Triangle3 Transform(this AffineTransform3 transformer, Triangle3 input) { return(new Triangle3(transformer.Transform(input.V0), transformer.Transform(input.V1), transformer.Transform(input.V2))); }
// Token: 0x060004CD RID: 1229 RVA: 0x00018B5A File Offset: 0x00016D5A public static Cylinder3 Transform(this AffineTransform3 transformer, Cylinder3 cylinder) { return(new Cylinder3(transformer.Transform(cylinder.Axis), transformer.Scale * cylinder.Radius, transformer.Scale * cylinder.Height)); }
// Token: 0x060004C4 RID: 1220 RVA: 0x00018983 File Offset: 0x00016B83 public static Arc3 Transform(this AffineTransform3 transformer, Arc3 arc) { return(new Arc3(transformer.Transform(arc.Circle), arc.StartAngle, arc.DeltaAngle)); }