@@ -328,6 +328,7 @@ export class Property<PropertyValueType extends Value> {
328328 amp_mult : number = 0.5 ,
329329 time : number = thisLayer . time
330330 ) : PropertyValueType {
331+ const som = freq + amp + octaves + amp_mult + time ;
331332 return this . value ;
332333 }
333334 /**
@@ -996,7 +997,10 @@ export class Layer {
996997 * @param time The time to sample the vector
997998 * @returns The vector in the composition space
998999 */
999- toComp ( vec : Vector , time : number = this . time ) : Vector {
1000+ toComp < VectorType extends Vector | Vector2D | Vector3D > (
1001+ vec : VectorType ,
1002+ time : number = this . time
1003+ ) : VectorType {
10001004 return vec ;
10011005 }
10021006 /**
@@ -1006,7 +1010,10 @@ export class Layer {
10061010 * @param time The time to sample the vector
10071011 * @returns The vector in the layer's space
10081012 */
1009- fromComp ( vec : Vector , time : number = this . time ) : Vector {
1013+ fromComp < VectorType extends Vector | Vector2D | Vector3D > (
1014+ vec : VectorType ,
1015+ time : number = this . time
1016+ ) : VectorType {
10101017 return vec ;
10111018 }
10121019 /**
@@ -1016,19 +1023,34 @@ export class Layer {
10161023 * @param time The time to sample the number
10171024 * @returns The vector in world space
10181025 */
1019- toWorld ( vec : Vector , time : number = this . time ) : Vector {
1026+ toWorld < VectorType extends Vector | Vector2D | Vector3D > (
1027+ vec : VectorType ,
1028+ time : number = this . time
1029+ ) : VectorType {
10201030 return vec ;
10211031 }
1022- toCompVec ( vec : Vector , time : number = this . time ) : Vector {
1032+ toCompVec < VectorType extends Vector | Vector2D | Vector3D > (
1033+ vec : VectorType ,
1034+ time : number = this . time
1035+ ) : VectorType {
10231036 return vec ;
10241037 }
1025- fromCompVec ( vec : Vector , time : number = this . time ) : Vector {
1038+ fromCompVec < VectorType extends Vector | Vector2D | Vector3D > (
1039+ vec : VectorType ,
1040+ time : number = this . time
1041+ ) : VectorType {
10261042 return vec ;
10271043 }
1028- toWorldVec ( vec : Vector , time : number = this . time ) : Vector {
1044+ toWorldVec < VectorType extends Vector | Vector2D | Vector3D > (
1045+ vec : VectorType ,
1046+ time : number = this . time
1047+ ) : VectorType {
10291048 return vec ;
10301049 }
1031- fromWorldVec ( vec : Vector , time : number = this . time ) : Vector {
1050+ fromWorldVec < VectorType extends Vector | Vector2D | Vector3D > (
1051+ vec : VectorType ,
1052+ time : number = this . time
1053+ ) : VectorType {
10321054 return vec ;
10331055 }
10341056 /**
@@ -1038,7 +1060,10 @@ export class Layer {
10381060 * @param time The time to sample the number
10391061 * @returns The vector in on the layers surface space
10401062 */
1041- fromCompToSurface ( vec : Vector , time : number = this . time ) : Vector {
1063+ fromCompToSurface < VectorType extends Vector | Vector2D | Vector3D > (
1064+ vec : VectorType ,
1065+ time : number = this . time
1066+ ) : VectorType {
10421067 return vec ;
10431068 }
10441069 /**
0 commit comments