init push 0.2.4
This commit is contained in:
365
Runtime/HorizonLineOrbit/DrawTerminalLine2T3_OpSlot.cs
Normal file
365
Runtime/HorizonLineOrbit/DrawTerminalLine2T3_OpSlot.cs
Normal file
@@ -0,0 +1,365 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Deconstruction.Element;
|
||||
using Deconstruction.Interface;
|
||||
using Deconstruction.Manager;
|
||||
using Deconstruction.Tool;
|
||||
using Deconstruction.Trajectory;
|
||||
using Deconstruction.Type.DMToolSlot;
|
||||
using Deconstruction.Type.Linkable;
|
||||
using UnityEngine;
|
||||
using XericLibrary.Runtime.MacroLibrary;
|
||||
|
||||
namespace SesothoLine
|
||||
{
|
||||
using LineSegment2 = Deconstruction.Element.PromptLine2.LineSegment2;
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD>ƹ켣<C6B9>ߵIJ<DFB5><C4B2><EFBFBD>
|
||||
/// <code>
|
||||
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WaitForUserInput_OpSlot<6F><74><EFBFBD><EFBFBD><EFBFBD>˴<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>TerminalLine2T3<54><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD>Ļ<EFBFBD><C4BB>ƣ<EFBFBD>
|
||||
/// ͬʱ<CDAC><CAB1><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>TerminalPoint<6E><74><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
///
|
||||
/// ֧<>ֳ<EFBFBD><D6B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// <20><>֧<EFBFBD><D6A7><EFBFBD><EFBFBD>β<EFBFBD><CEB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </code>
|
||||
/// </summary>
|
||||
public class DrawTerminalLine2T3_OpSlot : WaitForUserInput_OpSlot
|
||||
{
|
||||
#region <EFBFBD>ֶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
/// <summary>
|
||||
/// <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
private Vector3 _lastPointPosition;
|
||||
|
||||
/// <summary>
|
||||
/// <20><>һ<EFBFBD><D2BB><EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD>켣<EFBFBD><ECBCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
private Vector3 _lastPointNormal;
|
||||
|
||||
/// <summary>
|
||||
/// <20><>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
private Vector3 _helperPosition = Vector3.zero;
|
||||
|
||||
/// <summary>
|
||||
/// <20><>һ<EFBFBD><D2BB><EFBFBD>ķ<EFBFBD><C4B7><EFBFBD>
|
||||
/// </summary>
|
||||
private Vector3 _helperNormal = Vector3.zero;
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD><EFBFBD><EFBFBD>Ĺ켣<C4B9><ECBCA3>
|
||||
/// </summary>
|
||||
private TerminalLine2T3 _line;
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
private TerminalPoint _startPoint;
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD><EFBFBD><EFBFBD>ĵ㣬Ҳ<E3A3AC><D2B2><EFBFBD>յ<EFBFBD>
|
||||
/// </summary>
|
||||
private TerminalPoint _endPoint;
|
||||
|
||||
/// <summary>
|
||||
/// <20>ڳ<EFBFBD><DAB3><EFBFBD><EFBFBD>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵ<EFBFBD>
|
||||
/// </summary>
|
||||
private TerminalPoint _otherPoint;
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
private bool _isStartPointSubstitute = false;
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɵ<EFBFBD>
|
||||
/// </summary>
|
||||
private bool _isFreeEndPoint;
|
||||
|
||||
// public SesothoArrangementWiresTool myWiresTool;
|
||||
// myWiresTool = targetTool as SesothoArrangementWiresTool;
|
||||
|
||||
#endregion
|
||||
|
||||
#region <EFBFBD><EFBFBD><EFBFBD>÷<EFBFBD>װ
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC>Ĺ<EFBFBD><C4B9><EFBFBD>
|
||||
/// </summary>
|
||||
private SesothoArrangementWiresTool selfWiresTool => SesothoPeManager.WiresTool;
|
||||
|
||||
#endregion
|
||||
|
||||
#region <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
protected override void OnStart()
|
||||
{
|
||||
base.OnStart();
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>ִ<EFBFBD><D6B4>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ȷ
|
||||
if (!HasLastNode)
|
||||
{
|
||||
Debug.LogError(
|
||||
$"<22><><EFBFBD>ƽڵ<C6BD><DAB5><EFBFBD>Ϊ<EFBFBD><CEAA>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F3A3ACB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WaitForUserInput_OpSlot<6F>еִ<D0B5><D6B4>˴<EFBFBD>");
|
||||
RemoveThis();
|
||||
return;
|
||||
}
|
||||
|
||||
if (Last is not WaitForUserInput_OpSlot)
|
||||
{
|
||||
Debug.LogError(
|
||||
$"<22><><EFBFBD>ƽڵ<C6BD><DAB5><EFBFBD>Ϊ<EFBFBD><CEAA>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD> WaitForUserInput_OpSlot -> {nameof(DrawTerminalLine2T3_OpSlot)}<7D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>{Last.GetType().Name}");
|
||||
RemoveThis();
|
||||
return;
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>Ⱦ<EFBFBD><C8BE><EFBFBD><EFBFBD><EFBFBD>
|
||||
InitPrecondition();
|
||||
}
|
||||
|
||||
protected override void OnEnd()
|
||||
{
|
||||
base.OnEnd();
|
||||
}
|
||||
|
||||
protected override void Update()
|
||||
{
|
||||
// <20><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ĭ<EFBFBD>ϲ<EFBFBD><CFB2><EFBFBD>
|
||||
// base.Update();
|
||||
|
||||
// <20>ߵĻ<DFB5><C4BB>Ƽ<EFBFBD><C6BC>㣬<EFBFBD><E3A3AC><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӵ<EFBFBD>
|
||||
DrawingProcess();
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϻ<EFBFBD>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD>Ⱦ<EFBFBD><C8BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>п<EFBFBD><D0BF>ܻ<EFBFBD><DCBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD>ڴ<EFBFBD>֮ǰ<D6AE>Ľ<C4BD><D7B6>Ѿ<EFBFBD><D1BE>Դ˽<D4B4><CBBD>й<EFBFBD><D0B9>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>й<EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ط<EFBFBD><D8B7>ճ<EFBFBD><D5B3>Ļ<EFBFBD><C4BB><EFBFBD>Ҫע<D2AA>⡣
|
||||
_line.UpdateRender();
|
||||
|
||||
// <20><>һ<EFBFBD><D2BB>
|
||||
if (IsReleaseContinueKey())
|
||||
{
|
||||
_helperNormal = _line.TrajectoryCalculator.GetEndPointNormal.UpwardPlaneToVector3();
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
if (_isStartPointSubstitute)
|
||||
{
|
||||
// <20>ڿ<EFBFBD>ʼʱ<CABC>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>
|
||||
// var dtlt_Slot = Last as DrawTerminalLine2T3_OpSlot;
|
||||
_line.LinkedDataAddPolarity(_startPoint, LinkType.Import);
|
||||
}
|
||||
else
|
||||
{
|
||||
_line.LinkedDataAddPolarity(_startPoint, LinkType.Import);
|
||||
selfWiresTool.PersistentElement(_startPoint);
|
||||
selfWiresTool.AddPeToNeighborGrid(_startPoint);
|
||||
}
|
||||
|
||||
// <20>յ<EFBFBD><D5B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
if (_otherPoint is null) // || _endPoint.gameObject.activeSelf
|
||||
{
|
||||
_line.LinkedDataAddPolarity(_endPoint, LinkType.Export);
|
||||
selfWiresTool.PersistentElement(_endPoint);
|
||||
selfWiresTool.AddPeToNeighborGrid(_endPoint);
|
||||
}
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF>
|
||||
else
|
||||
{
|
||||
selfWiresTool.DeleteElement(_endPoint);
|
||||
_line.LinkedDataAddPolarity(_otherPoint, LinkType.Export);
|
||||
}
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
_line.ReapplyOrigin();
|
||||
selfWiresTool.PersistentElement(_line);
|
||||
selfWiresTool.AddBulkPeToNeighborGrid(_line);
|
||||
|
||||
// <20><>һ<EFBFBD><D2BB>
|
||||
ReplaceThis(new DrawTerminalLine2T3_OpSlot());
|
||||
}
|
||||
// ȡ<><C8A1>
|
||||
else if (IsReleaseCanelKey())
|
||||
{
|
||||
RemoveThis();
|
||||
EndPrecondition();
|
||||
}
|
||||
// todo: <20>ص<EFBFBD><D8B5><EFBFBD>һ<EFBFBD><D2BB>
|
||||
/*
|
||||
* <20><><EFBFBD><EFBFBD>ջ<EFBFBD>Ľṹʹ<E1B9B9>ò<EFBFBD><C3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĸ<EFBFBD><C4B8>¿<EFBFBD><C2BF>Է<EFBFBD><D4B7><EFBFBD>,
|
||||
* <20><><EFBFBD>dz<EFBFBD><C7B3>صĹ<D8B5><C4B9>̿<EFBFBD><CCBF><EFBFBD><EFBFBD>е㸴<D0B5>ӣ<EFBFBD>
|
||||
* <20><>Ҫ<EFBFBD><D2AA>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڼ䳷<DABC>غͳ<D8BA><CDB3>泷<EFBFBD>ء<EFBFBD>
|
||||
*/
|
||||
}
|
||||
|
||||
protected override void AsyncBeforeUpdate()
|
||||
{
|
||||
base.AsyncBeforeUpdate();
|
||||
}
|
||||
|
||||
protected override void AsyncUpdate()
|
||||
{
|
||||
base.AsyncUpdate();
|
||||
}
|
||||
|
||||
protected override void AsyncAfterUpdate()
|
||||
{
|
||||
base.AsyncAfterUpdate();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD><EFBFBD><EFBFBD>Ⱦ<EFBFBD><C8BE><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
private void InitPrecondition()
|
||||
{
|
||||
switch (Last)
|
||||
{
|
||||
// ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ߵ<EFBFBD>Ԫ<EFBFBD><D4AA>
|
||||
case DrawTerminalLine2T3_OpSlot dtlt_Slot:
|
||||
_isStartPointSubstitute = true;
|
||||
_startPoint = dtlt_Slot._endPoint;
|
||||
_lastPointPosition = dtlt_Slot._helperPosition;
|
||||
_lastPointNormal = dtlt_Slot._helperNormal;
|
||||
break;
|
||||
// <20>½<EFBFBD><C2BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӿռ<D3BF><D5BC>м̳<D0BC>
|
||||
case WaitForUserInput_OpSlot wfui_Slot:
|
||||
if (SesothoArrangementWiresTool.GetNearestObjectAsPoint(out var terminalPoint))
|
||||
{
|
||||
_isStartPointSubstitute = true;
|
||||
_startPoint = terminalPoint;
|
||||
_lastPointPosition = terminalPoint.GetPosition3();
|
||||
if (SesothoArrangementWiresTool.GetNearestObjectAsLine(terminalPoint, out var terminalLine,
|
||||
out var normal))
|
||||
_lastPointNormal = normal;
|
||||
else
|
||||
{
|
||||
Debug.LogError("<22><><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD>·<C2B7><D7BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>겢<EFBFBD><EAB2A2>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CDB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD>");
|
||||
RemoveThis();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
_isStartPointSubstitute = false;
|
||||
selfWiresTool.GetElement(out _startPoint);
|
||||
_lastPointPosition = SesothoArrangementWiresTool.OpKey_IgnoreNeighborAdsorption.Getkey() ?
|
||||
wfui_Slot.MouseHelperPosition :
|
||||
CameraMouseInputHelper.Inst.GetGridAdsorb(wfui_Slot.MouseHelperPosition);
|
||||
_lastPointNormal = default;
|
||||
}
|
||||
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
selfWiresTool.GetElement(out _line);
|
||||
selfWiresTool.GetElement(out _endPoint);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
private void EndPrecondition()
|
||||
{
|
||||
selfWiresTool.DeleteElement(_line);
|
||||
// <20><><EFBFBD>ܰѱ<DCB0><D1B1>˵Ķ<CBB5><C4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
if (!_isStartPointSubstitute)
|
||||
selfWiresTool.DeleteElement(_startPoint);
|
||||
selfWiresTool.DeleteElement(_endPoint);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// <20><>·<EFBFBD><C2B7><EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD>
|
||||
/// </summary>
|
||||
private void DrawingProcess()
|
||||
{
|
||||
// <20><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
_helperPosition = PlaceElementManager.Inst.InputHelper.CurrentGridPosition;
|
||||
|
||||
_startPoint.transform.position = _lastPointPosition;
|
||||
|
||||
_isFreeEndPoint = true;
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>壬<EFBFBD><E5A3AC><EFBFBD><EFBFBD><EFBFBD>ð<EFBFBD><C3B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>
|
||||
if (SesothoPeManager.NearestObject is not null &&
|
||||
SesothoArrangementWiresTool.GetNearestObjectAsPoint(out _otherPoint) &&
|
||||
!SesothoArrangementWiresTool.OpKey_IgnoreNeighborAdsorption.Getkey())
|
||||
{
|
||||
_isFreeEndPoint = false;
|
||||
if (_endPoint.gameObject.activeSelf)
|
||||
_endPoint.gameObject.SetActive(false);
|
||||
|
||||
_helperPosition = SesothoPeManager.NearestPoint;
|
||||
_endPoint.transform.position = SesothoPeManager.NearestPoint;
|
||||
if (SesothoArrangementWiresTool.GetNearestObjectAsLine(_otherPoint, out var terminalLine,
|
||||
out var normal))
|
||||
_helperNormal = normal;
|
||||
}
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// else if (NearestLineTangentObject != null)
|
||||
// {
|
||||
// NearestLineTangentPoint
|
||||
// }
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɵ<EFBFBD>
|
||||
if (_isFreeEndPoint)
|
||||
{
|
||||
if (!_endPoint.gameObject.activeSelf)
|
||||
_endPoint.gameObject.SetActive(true);
|
||||
_otherPoint = null;
|
||||
_helperNormal = default;
|
||||
_endPoint.transform.position = _helperPosition;
|
||||
}
|
||||
|
||||
_line.SetLineSegment(
|
||||
_lastPointPosition, _helperPosition,
|
||||
_lastPointNormal, _helperNormal
|
||||
);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><DFBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD><C3B4>ȡ<EFBFBD><C8A1><EFBFBD>ĽǶ<C4BD>
|
||||
// if (_line.NowCalculator is RoundTrajectory2 arc)
|
||||
// {
|
||||
// Debug.Log($"<22>Ƕ<EFBFBD>{arc.Angle} {arc.AngleExact}");
|
||||
// }
|
||||
|
||||
var forceStr = SesothoArrangementWiresTool.OpKey_ForceStr.Getkey();
|
||||
if (forceStr)
|
||||
_line.DrawStraightLine();
|
||||
else
|
||||
{
|
||||
var force90Arc = SesothoArrangementWiresTool.OpKey_90Arc.Getkey();
|
||||
var force180Arc = SesothoArrangementWiresTool.OpKey_180Arc.Getkey();
|
||||
var forceRevCisoid = SesothoArrangementWiresTool.OpKey_RevCisoid.Getkey();
|
||||
|
||||
|
||||
var angle = -1;
|
||||
if (force90Arc || force180Arc)
|
||||
{
|
||||
angle = 0;
|
||||
if (force90Arc)
|
||||
angle += 90;
|
||||
if (force180Arc)
|
||||
angle += 180;
|
||||
}
|
||||
|
||||
_line.AutomaticDrawCircularLine(angle, forceRevCisoid);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private bool GetCurrentObject()
|
||||
{
|
||||
// SesothoPeManager.
|
||||
return false;
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user