Reference page for Point
Contents
- Summary
- this = Point(arguments) Constructor.
- this.angle(arguments) Angular coordinate.
- this.copy(arguments) Return a deep copy.
- this.minus(arguments) Minus operator.
- this.mirror(arguments) Mirroring across a segment center.
- this.mirror_inplace(arguments) Mirror in-place.
- this.mrdivide(arguments) Scale coordinates by dividing with a scalar.
- this.mtimes(arguments) Scale coordinates by multiplying with a scalar.
- this.norm(arguments) Radial coordinate.
- this.normalize(arguments) point distance from origin.
- this.plot(arguments) Plot point.
- this.plus(arguments) Plus operator.
- this.rotate(arguments) Create a new Point, rotated around the origin.
- rotate Rotate this point around the origin.
- this.translate(arguments) Create a new translated point.
- this.translate_inplace(arguments) Translation inplace.
- this.xmirror(arguments) Return a new Point, mirrored around the x-axis.
- this.ymirror(arguments) Return a new Point, mirrored around the y-axis.
Summary
POINT Class for representing points in a geometry.
Point objects are typically used for defining Surface objects, to be meshed later.
Point objects behave in many ways like 2x1 vectors, allowing the operations
- pnew = p1 + p2
- pnew = p1 - p2
- pnew = p1 * scalar
- pnew = p1 / scalar
- r = norm(p1) = p1.norm()
- theta = angle(p1) = p1.angle()
Furthermore, the following operations are often useful for creating geometries for radial-flux motors:
- pnew = p1.mirror(theta)
- pnew = p1.normalize(radius)
- p1.translate( [x,y] )
- inplace variants of the above, for e.g. modifying existing Surface objects. Documentation for Point doc Point
PROPERTIES
- curves - Array of Curve objects that this point belongs to
- Point/is3D is a property.
- lcar - Characteristic length; representative of maximum edge length of the mesh near Point
- x - x-coordinate of Point
- y - y-coordinate of Point
- Point/z is a property.
METHODS
Class methods are listed below. Inherited methods are not included.
this = Point(arguments) Constructor.
this = Point([x,y], lcar)
Create a new point at (x,y) with the characteristic length lcar.
this.angle(arguments) Angular coordinate.
theta = angle(this)
Returns the angular coordinate theta = atan2(this.y, this.x)
this.copy(arguments) Return a deep copy.
Returns a new point with the same coordinates and characteristic length.
this.minus(arguments) Minus operator.
See Point.plus.
this.mirror(arguments) Mirroring across a segment center.
p2 = mirror(this, theta)
Returns a new Point, *mirror*ed around the center of a circle segment of theta radians. For instance, if
angle(P) = 30 deg,
then angle(P.*mirror*(pi/4)) = 60 deg.
this.mirror_inplace(arguments) Mirror in-place.
The same as mirror, but instead of returning a new Point modifies this.
this.mrdivide(arguments) Scale coordinates by dividing with a scalar.
p2 = P1 / a
Returns a new Point p2, at (P1.x/a, P1.y/x), with the characteristic length equal to P1.lcar.
this.mtimes(arguments) Scale coordinates by multiplying with a scalar.
p2 = P1 * a
Returns a new Point p2, at (P1.x*a, P1.y*x), with the characteristic length equal to P1.lcar.
this.norm(arguments) Radial coordinate.
r = norm(this)
Returns the radial coordinate r = sqrt( this.x^2 + this.y^2 ).
this.normalize(arguments) point distance from origin.
this = normalize(this, new_r)
Modifies the coordinates of this point so that its distance from origin (norm(this)) is equal to new_r. The angular coordinate angle(this) remains unchanged.
this.plot(arguments) Plot point.
plot(this, text, args)
Plots the point using the marker style etc specified in args, annotated with text. Supply an empty string to skip.
this.plus(arguments) Plus operator.
pnew = p1 + p2
Returns a new point at (p1.x + p2.x, p1.y + p2.y), with a characteristic length equal to p1.lcar.
Also works when p is a 2-vector.
this.rotate(arguments) Create a new Point, rotated around the origin.
p2 = rotate(this, theta)
Return a new Point, *rotate*d around the origin by theta radians.
rotate Rotate this point around the origin.
p2 = rotate(this, theta)
Rotate this Point around the origin by theta radians.
this.translate(arguments) Create a new translated point.
pnew = translate(this, s)
Returns a new Point, *translate*d with the vector s.
pnew = translate(this, s, lcar)
In addition to above, updates the characteristic length of the new Point.
this.translate_inplace(arguments) Translation inplace.
this = translate_inplace(this, Point)
Sets the coordinates of this equal to (Point.x, Point.y)
this = translate_inplace(this, [x, y])
Sets the coordinates of this equal to (x, y)
this.xmirror(arguments) Return a new Point, mirrored around the x-axis.
p2 = xmirror(this, x)
Returns a new Point at (x - this.x, this.y).
p2 = xmirror(this, x, lcar)
In addition to the above, sets the characteristic length of p2 to lcar.
this.ymirror(arguments) Return a new Point, mirrored around the y-axis.
p2 = ymirror(this, y)
Returns a new Point at (this.x, y-_this_.y).
p2 = ymirror(this)
Equivalent to p2 = ymirror(this, 0)
p2 = ymirror(this, y, lcar)
In addition to the above, sets the characteristic length of p2 to lcar.