/*
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
*/
define(["exports","../../../../chunks/_rollupPluginBabelHelpers","../../../../chunks/vec2","../../../../chunks/vec2f64","../SnappingConstraint","../snappingUtils","./SnappingCandidate","../hints/LineSnappingHint","../hints/RightAngleSnappingHint"],(function(n,t,i,e,a,p,s,o,r){"use strict";let g=function(n){function e({coordinateHelper:t,targetPoint:e,point1:p,point2:s,elevationInfo:o}){var r;return(r=n.call(this,t,e,new a.PlanarCircleConstraint(t,i.lerp(l,p,s,.5),.5*i.distance(p,s)),o)||this).p1=p,r.p2=s,r}return t._inheritsLoose(e,n),t._createClass(e,[{key:"hints",get:function(){const n=this.elevationInfo;return[new o.LineSnappingHint(p.LineSegmentHintType.REFERENCE,this.targetPoint,this.p1,n),new o.LineSnappingHint(p.LineSegmentHintType.REFERENCE,this.targetPoint,this.p2,n),new r.RightAngleSnappingHint(this.p1,this.targetPoint,this.p2,n)]}}]),e}(s.SnappingCandidate);const l=e.create();n.RightAngleTriangleSnappingCandidate=g,Object.defineProperties(n,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
