/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["exports","../../../../core/arrayUtils","../../../../chunks/vec2f64","../../../../chunks/vec2","./UpdateVertices"],(function(t,c,i,a,o){"use strict";let s=function(){function t(t,c,a,s,e=o.AccumulationType.CUMULATIVE){this.origin=t,this.axis1=c,this.factor1=a,this.factor2=s,this.accumulationType=e,this.axis2=i.fromValues(c[1],-c[0])}var s=t.prototype;return s._scale=function(t,c,i){a.projectAndScale(t.pos,t.pos,this.origin,this.axis1,c),a.projectAndScale(t.pos,t.pos,this.origin,this.axis2,i)},s.apply=function(t){this._scale(t,this.factor1,this.factor2)},s.undo=function(t){this._scale(t,1/this.factor1,1/this.factor2)},s.canAccumulate=function(i){return i instanceof t&&c.equals(this.origin,i.origin)&&c.equals(this.axis1,i.axis1)},s.accumulate=function(t,c){c.accumulationType===o.AccumulationType.REPLACE?this._scale(t,c.factor1/this.factor1,c.factor2/this.factor2):this._scale(t,c.factor1,c.factor2)},s.accumulateParams=function(t){const c=t.accumulationType===o.AccumulationType.REPLACE;this.factor1=c?t.factor1:this.factor1*t.factor1,this.factor2=c?t.factor2:this.factor2*t.factor2},t}();t.ScaleVertex=s,Object.defineProperties(t,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
