Package-level declarations

Types

Link copied to clipboard

Marks declarations that give access to internal entities of polytopic constructions delicate structure. Thus, it allows optimizing performance a bit by skipping standard steps, but such skips may cause critical errors if something is implemented badly. Make sure you fully read and understand documentation and don't break internal contracts.

Link copied to clipboard
interface EuclideanKategory<N>
Link copied to clipboard
Link copied to clipboard
data class EuclideanKategory2Scope<N, A : Ring<N>, E : EuclideanKategory2<N>>(val numberRing: A, val numberOrder: Order<N>, val euclideanKategory: E)
Link copied to clipboard
Link copied to clipboard
data class EuclideanKategory3Scope<N, A : Ring<N>, E : EuclideanKategory3<N>>(val numberRing: A, val numberOrder: Order<N>, val euclideanKategory: E)
Link copied to clipboard
Link copied to clipboard
data class EuclideanKategory4Scope<N, A : Ring<N>, E : EuclideanKategory4<N>>(val numberRing: A, val numberOrder: Order<N>, val euclideanKategory: E)
Link copied to clipboard
@Serializable(with = PointSerializer::class)
open class Point<out N>(val coordinates: ColumnVector<N>)
Link copied to clipboard
@Serializable(with = Point2Serializer::class)
class Point2<out N>(coordinates: ColumnVector<N>) : Point<N>
Link copied to clipboard
@Serializable(with = Point3Serializer::class)
class Point3<out N>(coordinates: ColumnVector<N>) : Point<N>
Link copied to clipboard
@Serializable(with = Point4Serializer::class)
class Point4<out N>(coordinates: ColumnVector<N>) : Point<N>
Link copied to clipboard
@Serializable(with = VectorSerializer::class)
open class Vector<out N>(val coordinates: ColumnVector<N>)
Link copied to clipboard
@Serializable(with = Vector2Serializer::class)
class Vector2<out N>(coordinates: ColumnVector<N>) : Vector<N>
Link copied to clipboard
@Serializable(with = Vector3Serializer::class)
class Vector3<out N>(coordinates: ColumnVector<N>) : Vector<N>
Link copied to clipboard
@Serializable(with = Vector4Serializer::class)
class Vector4<out N>(coordinates: ColumnVector<N>) : Vector<N>

Properties

Link copied to clipboard

Functions

Link copied to clipboard
infix fun <N> Vector2<N>.dot(other: Vector2<N>): N
infix fun <N> Vector3<N>.dot(other: Vector3<N>): N
infix fun <N> Vector4<N>.dot(other: Vector4<N>): N
infix fun <N> Vector<N>.dot(other: Vector<N>): N
Link copied to clipboard
fun <N> Ring<N>.euclideanKategory(vectorKategory: VectorKategory<N> = vectorKategory()): EuclideanKategory<N>
Link copied to clipboard
fun <N> Ring<N>.euclideanKategory2(vectorKategory: VectorKategory<N> = vectorKategory()): EuclideanKategory2<N>
Link copied to clipboard
fun <N> Ring<N>.euclideanKategory3(vectorKategory: VectorKategory<N> = vectorKategory()): EuclideanKategory3<N>
Link copied to clipboard
fun <N> Ring<N>.euclideanKategory4(vectorKategory: VectorKategory<N> = vectorKategory()): EuclideanKategory4<N>
Link copied to clipboard
inline fun <N, R> KoneContextRegistry.inEuclideanKategory2For(numberType: SuppliedType<N>, block: (EuclideanKategory2<N>) -> R): R
Link copied to clipboard
inline fun <N, R> KoneContextRegistry.inEuclideanKategory3For(numberType: SuppliedType<N>, block: (EuclideanKategory3<N>) -> R): R
Link copied to clipboard
inline fun <N, R> KoneContextRegistry.inEuclideanKategory4For(numberType: SuppliedType<N>, block: (EuclideanKategory4<N>) -> R): R
Link copied to clipboard
Link copied to clipboard
inline fun <N, R> KoneContextRegistry.inEuclideanKategoryScope2For(numberType: SuppliedType<N>, block: (Ring<N>, Order<N>, EuclideanKategory2<N>) -> R): R
Link copied to clipboard
inline fun <N, R> KoneContextRegistry.inEuclideanKategoryScope3For(numberType: SuppliedType<N>, block: (Ring<N>, Order<N>, EuclideanKategory3<N>) -> R): R
Link copied to clipboard
inline fun <N, R> KoneContextRegistry.inEuclideanKategoryScope4For(numberType: SuppliedType<N>, block: (Ring<N>, Order<N>, EuclideanKategory4<N>) -> R): R
Link copied to clipboard
Link copied to clipboard
inline operator fun <N, A : Ring<N>, E : EuclideanKategory2<N>, R> EuclideanKategory2Scope<N, A, E>.invoke(block: (A, E) -> R): R
inline operator fun <N, A : Ring<N>, E : EuclideanKategory3<N>, R> EuclideanKategory3Scope<N, A, E>.invoke(block: (A, E) -> R): R
inline operator fun <N, A : Ring<N>, E : EuclideanKategory4<N>, R> EuclideanKategory4Scope<N, A, E>.invoke(block: (A, E) -> R): R
Link copied to clipboard
operator fun <N> Point2<N>.minus(other: Point2<N>): Vector2<N>
operator fun <N> Point2<N>.minus(other: Vector2<N>): Point2<N>
operator fun <N> Point3<N>.minus(other: Point3<N>): Vector3<N>
operator fun <N> Point3<N>.minus(other: Vector3<N>): Point3<N>
operator fun <N> Point4<N>.minus(other: Point4<N>): Vector4<N>
operator fun <N> Point4<N>.minus(other: Vector4<N>): Point4<N>
operator fun <N> Point<N>.minus(other: Point<N>): Vector<N>
operator fun <N> Point<N>.minus(other: Vector<N>): Point<N>
operator fun <N> Vector2<N>.minus(other: Vector2<N>): Vector2<N>
operator fun <N> Vector3<N>.minus(other: Vector3<N>): Vector3<N>
operator fun <N> Vector4<N>.minus(other: Vector4<N>): Vector4<N>
operator fun <N> Vector<N>.minus(other: Vector<N>): Vector<N>
Link copied to clipboard
operator fun <N> Point2<N>.plus(other: Vector2<N>): Point2<N>
operator fun <N> Point3<N>.plus(other: Vector3<N>): Point3<N>
operator fun <N> Point4<N>.plus(other: Vector4<N>): Point4<N>
operator fun <N> Point<N>.plus(other: Vector<N>): Point<N>
operator fun <N> Vector2<N>.plus(other: Point2<N>): Point2<N>
operator fun <N> Vector2<N>.plus(other: Vector2<N>): Vector2<N>
operator fun <N> Vector3<N>.plus(other: Point3<N>): Point3<N>
operator fun <N> Vector3<N>.plus(other: Vector3<N>): Vector3<N>
operator fun <N> Vector4<N>.plus(other: Point4<N>): Point4<N>
operator fun <N> Vector4<N>.plus(other: Vector4<N>): Vector4<N>
operator fun <N> Vector<N>.plus(other: Point<N>): Point<N>
operator fun <N> Vector<N>.plus(other: Vector<N>): Vector<N>
Link copied to clipboard
fun <N> Point(coordinates: MDList1<N>): Point<N>
fun <N> Point(vararg coordinates: N): Point<N>
fun <N> Point(size: UInt, initializer: (coordinate: UInt) -> N): Point<N>
Link copied to clipboard
fun <N> Point2(coordinates: MDList1<N>): Point2<N>
fun <N> Point2(x: N, y: N): Point2<N>
Link copied to clipboard
fun <N> Point3(coordinates: MDList1<N>): Point3<N>
fun <N> Point3(x: N, y: N): Point3<N>
Link copied to clipboard
fun <N> Point4(coordinates: MDList1<N>): Point4<N>
fun <N> Point4(x: N, y: N): Point4<N>
Link copied to clipboard
operator fun <N> N.times(other: Vector2<N>): Vector2<N>
operator fun <N> N.times(other: Vector3<N>): Vector3<N>
operator fun <N> N.times(other: Vector4<N>): Vector4<N>
operator fun <N> N.times(other: Vector<N>): Vector<N>
operator fun <N> Vector2<N>.times(other: N): Vector2<N>
operator fun <N> Vector3<N>.times(other: N): Vector3<N>
operator fun <N> Vector4<N>.times(other: N): Vector4<N>
operator fun <N> Vector<N>.times(other: N): Vector<N>
Link copied to clipboard
operator fun <N> Vector2<N>.unaryMinus(): Vector2<N>
operator fun <N> Vector3<N>.unaryMinus(): Vector3<N>
operator fun <N> Vector4<N>.unaryMinus(): Vector4<N>
operator fun <N> Vector<N>.unaryMinus(): Vector<N>
Link copied to clipboard
fun <N> Vector(coordinates: MDList1<N>): Vector<N>
fun <N> Vector(vararg coordinates: N): Vector<N>
fun <N> Vector(size: UInt, initializer: (coordinate: UInt) -> N): Vector<N>
Link copied to clipboard
fun <N> Vector2(coordinates: MDList1<N>): Vector2<N>
fun <N> Vector2(x: N, y: N): Vector2<N>
Link copied to clipboard
fun <N> Vector3(coordinates: MDList1<N>): Vector3<N>
fun <N> Vector3(x: N, y: N): Vector3<N>
Link copied to clipboard
fun <N> Vector4(coordinates: MDList1<N>): Vector4<N>
fun <N> Vector4(x: N, y: N): Vector4<N>