This commit is contained in:
MuHua-123
2024-11-25 18:32:05 +08:00
parent 72d1f89b54
commit 84243e75a8
353 changed files with 17666 additions and 3206 deletions
+18
View File
@@ -0,0 +1,18 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataBezier {
/// <summary> 是否是a </summary>
public bool isA;
/// <summary> 关联的边 </summary>
public DataSide side;
/// <summary> 位置 </summary>
public Vector3 position => isA ? side.aBezier : side.bBezier;
public void SetBezierPosition(Vector3 value) {
if (isA) { side.SetBezierPositionA(value); }
else { side.SetBezierPositionB(value); }
side.plate.UpdateVisual();
}
}
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 26504492cb699964aad1334e6c272c90
guid: 72061d1b84a6a8b41978089a92f87ccb
MonoImporter:
externalObjects: {}
serializedVersion: 2
+24
View File
@@ -0,0 +1,24 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary> 2D边界数据 </summary>
public class DataBorder {
public readonly float minX = 0;
public readonly float maxX = 0;
public readonly float minY = 0;
public readonly float maxY = 0;
/// <summary> 2D边界数据 </summary>
public DataBorder(float minX, float maxX, float minY, float maxY) {
this.minX = minX; this.maxX = maxX;
this.minY = minY; this.maxY = maxY;
}
/// <summary> 边界宽 </summary>
public float Wide => maxX - minX;
/// <summary> 边界高 </summary>
public float High => maxY - minY;
/// <summary> 最小点 </summary>
public Vector3 MinPoint => new Vector3(minX, minY, 0);
/// <summary> 最大点 </summary>
public Vector3 MaxPoint => new Vector3(maxX, maxY, 0);
}
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e7f89410b01930c418b1df0a10a9f4cc
guid: 402c90a27e984c3448d7d1aec8ea3e78
MonoImporter:
externalObjects: {}
serializedVersion: 2
+16
View File
@@ -0,0 +1,16 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataConnector {
#region
public Vector3 aPoint;
public Vector3 bPoint;
#endregion
#region
/// <summary> 可视化对象 </summary>
public PrefabConnector visual;
#endregion
}
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 538ffda5b096d9d4cb1916697828a300
guid: 2aa5648d6f9298f4ab08f95a6cf4927a
MonoImporter:
externalObjects: {}
serializedVersion: 2
@@ -1,25 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataFindBezier {
/// <summary> 有效的点 </summary>
public bool IsValid => plate != null && point != null;
#region
/// <summary> 位置 (需要和点同一个坐标系) </summary>
public Vector3 position;
/// <summary> 板片数据 </summary>
public List<DataPlate> datas;
#endregion
#region
/// <summary> 是前点(-) </summary>
public bool isFront;
/// <summary> 查询到的板片 </summary>
public DataPlate plate;
/// <summary> 查询到的点 </summary>
public DataPoint point;
#endregion
}
@@ -1,25 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataFindPoint {
/// <summary> 有效的板片 </summary>
public bool IsValidPlate => plate != null;
/// <summary> 有效的点 </summary>
public bool IsValidPoint => point != null;
#region
/// <summary> 位置 (需要和点同一个坐标系) </summary>
public Vector3 position;
/// <summary> 板片数据 </summary>
public List<DataPlate> datas;
#endregion
#region
/// <summary> 查询到的板片 </summary>
public DataPlate plate;
/// <summary> 查询到的点 </summary>
public DataPoint point;
#endregion
}
+2 -12
View File
@@ -3,24 +3,14 @@ using System.Collections.Generic;
using UnityEngine;
public class DataInsertPoint {
/// <summary> 有效的</summary>
public bool IsValid => plate != null && aPoint != null && bPoint != null;
#region
/// <summary> 位置 (需要和点同一个坐标系) </summary>
public Vector3 position;
/// <summary> 板片数据 </summary>
public List<DataPlate> datas;
#endregion
#region
/// <summary> 执行操作的板片 </summary>
public DataPlate plate;
/// <summary> A点 </summary>
public DataPoint aPoint;
/// <summary> B点 </summary>
public DataPoint bPoint;
#endregion
/// <summary> 关联的线段 </summary>
public DataSide side;
}
+18
View File
@@ -0,0 +1,18 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary> 交点信息 </summary>
public class DataIntersect {
public readonly DataSide side;
public readonly Vector3 position;
/// <summary> 交点信息 </summary>
public DataIntersect(DataSide side, Vector3 position) {
this.side = side;
this.position = position;
}
/// <summary> 是否相交 </summary>
public bool isIntersect;
/// <summary> 交点 </summary>
public Vector3 intersectPoint;
}
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 178fdb6bf03219a419be9c9661e25a5f
guid: a8a4a29bf6f0fa14294e815ac39c81ad
MonoImporter:
externalObjects: {}
serializedVersion: 2
+10
View File
@@ -0,0 +1,10 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 标记数据
/// </summary>
public class DataMark {
}
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 61c3a2815406bfa4190a319d431b8fc5
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+12 -18
View File
@@ -1,25 +1,19 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UIElements;
/// <summary>
/// 鼠标输入参数
/// </summary>
public class DataMouseInput {
public Vector3 ScreenPosition;
/// <summary> 鼠标输入参数 </summary>
public DataMouseInput() { }
/// <summary> 鼠标滚动量 </summary>
public float ScrollWheel;
public DataMouseInput(MouseDownEvent evt) {
ScreenPosition = evt.localMousePosition;
}
public DataMouseInput(MouseMoveEvent evt) {
ScreenPosition = evt.localMousePosition;
}
public DataMouseInput(MouseUpEvent evt) {
ScreenPosition = evt.localMousePosition;
}
public DataMouseInput(MouseOutEvent evt) {
ScreenPosition = evt.localMousePosition;
}
public DataMouseInput(WheelEvent evt) {
ScreenPosition = evt.localMousePosition;
ScrollWheel = evt.delta.y;
}
/// <summary> 视图坐标 </summary>
public Vector3 ViewPosition;
/// <summary> 世界坐标 </summary>
public Vector3 WorldPosition;
/// <summary> 屏幕坐标 </summary>
public Vector3 ScreenPosition;
}
+1 -1
View File
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: d06cc200114296b4c9aef60a8def59b9
guid: b9de608d5b0294a4a88d16ba5fdabfdc
MonoImporter:
externalObjects: {}
serializedVersion: 2
-8
View File
@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: c55842ff76486fd458f30d05c0a5d2fa
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,21 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public abstract class DataNetwork {
public event Action<string> OnError;
public event Action<string> OnCallback;
public readonly string url;
public DataNetwork(string url) => this.url = url;
public abstract IEnumerator IWebRequest();
public virtual void RequestResultHandle(UnityWebRequest web) {
bool isDone = !web.isDone || web.result != UnityWebRequest.Result.Success;
if (isDone) { OnCallback?.Invoke(web.downloadHandler.text); }
else { OnError?.Invoke(web.downloadHandler.text); }
}
}
@@ -1,16 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DataNetworkGet : DataNetwork {
public DataNetworkGet(string url) : base(url) { }
public override IEnumerator IWebRequest() {
using (UnityWebRequest web = UnityWebRequest.Get(url)) {
yield return web.SendWebRequest();
RequestResultHandle(web);
}
}
}
@@ -1,22 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DataNetworkGetTexture : DataNetwork {
public Action<Texture2D> action;
public DataNetworkGetTexture(string url, Action<Texture2D> action) : base(url) => this.action = action;
public override IEnumerator IWebRequest() {
using (UnityWebRequest web = UnityWebRequestTexture.GetTexture(url)) {
yield return web.SendWebRequest();
RequestResultHandle(web);
}
}
public override void RequestResultHandle(UnityWebRequest web) {
base.RequestResultHandle(web);
bool isDone = !web.isDone || web.result != UnityWebRequest.Result.Success;
if (isDone) { action?.Invoke((web.downloadHandler as DownloadHandlerTexture).texture); }
}
}
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: d878ccfee24dcb643a5969a41747030f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,16 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DataNetworkPostForm : DataNetwork {
public readonly WWWForm form;
public DataNetworkPostForm(string url, WWWForm form) : base(url) => this.form = form;
public override IEnumerator IWebRequest() {
using (UnityWebRequest web = UnityWebRequest.Post(url, form)) {
yield return web.SendWebRequest();
RequestResultHandle(web);
}
}
}
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 94c1d521794afc841b26a36e6e873c59
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,24 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class DataNetworkPostJson : DataNetwork {
public readonly string json;
public DataNetworkPostJson(string url, string json) : base(url) => this.json = json;
public override IEnumerator IWebRequest() {
byte[] postBytes = System.Text.Encoding.Default.GetBytes(json);
#if UNITY_2022
using (UnityWebRequest web = UnityWebRequest.PostWwwForm(url, "POST")) {
#else
using (UnityWebRequest web = UnityWebRequest.Post(url, "POST")) {
#endif
web.uploadHandler.Dispose();
web.uploadHandler = new UploadHandlerRaw(postBytes);
web.SetRequestHeader("Content-Type", "application/json");
yield return web.SendWebRequest();
RequestResultHandle(web);
}
}
}
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: bf7743cdb35457b448a4b426a9c4a2af
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+16
View File
@@ -0,0 +1,16 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataLine {
public Vector3 a;
public Vector3 b;
/// <summary> 曲线起点的距离 </summary>
public float origin;
/// <summary> 线段距离 </summary>
public float Distance => Vector3.Distance(a, b);
/// <summary> 线段方向 </summary>
public Vector3 Direction => b - a;
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: cb5a40cc1c1a0ed478a2b46bec653c2c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+49 -12
View File
@@ -4,30 +4,67 @@ using System.Collections.Generic;
using UnityEngine;
public class DataPlate {
/// <summary> 核心模块 </summary>
private ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 设计可视化模块 </summary>
private ModuleVisual<DataPlate> VisualDesign => ModuleCore.VisualDesign;
/// <summary> 烘焙可视化模块 </summary>
private ModuleVisual<DataPlate> VisualBaking => ModuleCore.VisualBaking;
/// <summary> 简单多边形算法模块 </summary>
private ModuleAlgorithm<DataPlate> AlgorithmSimplePolygon => ModuleCore.AlgorithmSimplePolygon;
/// <summary> 细分多边形算法模块 </summary>
private ModuleAlgorithm<DataPlate> AlgorithmSubdivisionPolygon => ModuleCore.AlgorithmSubdivisionPolygon;
public void UpdateVisual(bool recalculate = true) {
if (recalculate) {
//简单多边形计算
//AlgorithmSimplePolygon.Compute(this);
//细分多边形计算
AlgorithmSubdivisionPolygon.Compute(this);
}
//生成可视化内容
VisualDesign.UpdateVisual(this);
//生成烘焙内容
VisualBaking.UpdateVisual(this);
}
#region
/// <summary> 边缘平滑度 </summary>
public float edgeSmooth = 0.01f;
/// <summary> 板片位置(本地坐标系) </summary>
public Vector3 position;
/// <summary> 设计点 </summary>
public float smooth = 0.01f;
/// <summary> 板片设计视图的位置(本地坐标系) </summary>
public Vector3 designPosition;
/// <summary> 板片烘焙视图的位置(本地坐标系) </summary>
public Vector3 bakingPosition;
/// <summary> 板片烘焙视图的旋转(本地坐标系) </summary>
public Vector3 bakingEulerAngles;
/// <summary> 点 </summary>
public List<DataPoint> points = new List<DataPoint>();
/// <summary> 边 </summary>
public List<DataSide> sides = new List<DataSide>();
#endregion
#region
/// <summary> 平面网格 </summary>
public Mesh polygon;
/// <summary> 边界数据 </summary>
public DataBorder border;
/// <summary> 边缘点 </summary>
public List<Vector3> edgePoints = new List<Vector3>();
public List<Vector3> edgePoints;
/// <summary> 设计网格 </summary>
public Mesh designMesh;
/// <summary> 三角形数据 </summary>
public List<DataTriangle> triangles;
/// <summary> 顶点网格 </summary>
public GridTool<DataVertex> vertexGrid;
#endregion
#region
/// <summary> 可视化对象 </summary>
public Transform transform;
/// <summary> 可视化多边形网格 </summary>
public MeshFilter polygonMeshFilter;
/// <summary> 可视化边缘线 </summary>
public LineRenderer edgeLineRenderer;
public ModulePrefab<DataPlate> design;
/// <summary> 可视化对象 </summary>
public ModulePrefab<DataPlate> baking;
/// <summary> 安排点 </summary>
public FixedArrange arrange;
#endregion
}
+1 -17
View File
@@ -10,28 +10,12 @@ public class DataPoint {
public DataPoint(DataPlate plate) => this.plate = plate;
#region
/// <summary> 点前(-) 是否是曲线 </summary>
public bool isCurveFront;
/// <summary> 点后(+) 是否是曲线 </summary>
public bool isCurveAfter;
/// <summary> 设计点位置(本地坐标系) </summary>
public Vector3 position;
/// <summary> 贝塞尔曲线前(-) </summary>
public Vector3 frontBezier;
/// <summary> 贝塞尔曲线后(+) </summary>
public Vector3 afterBezier;
#endregion
#region
/// <summary> 可视化对象 </summary>
public Transform transform;
/// <summary> 可视化贝塞尔点前(-) </summary>
public Transform frontBezierTransform;
/// <summary> 可视化贝塞尔点后(+) </summary>
public Transform afterBezierTransform;
/// <summary> 可视化贝塞尔线前(-) </summary>
public LineRenderer frontBezierLineRenderer;
/// <summary> 可视化贝塞尔线后(+) </summary>
public LineRenderer afterBezierLineRenderer;
public ModulePrefab<DataPoint> visual;
#endregion
}
+44
View File
@@ -0,0 +1,44 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public enum Bezier {
= 0, = 1, = 2
}
public class DataSide {
/// <summary> 绑定的板片 </summary>
public readonly DataPlate plate;
/// <summary> 初始化 </summary>
public DataSide(DataPlate plate) => this.plate = plate;
#region
/// <summary> 贝塞尔曲线阶数 </summary>
public Bezier bezier;
/// <summary> 起点 </summary>
public DataPoint aPoint;
/// <summary> 终点 </summary>
public DataPoint bPoint;
/// <summary> 贝塞尔曲线前(-) </summary>
public Vector3 aBezier;
/// <summary> 贝塞尔曲线后(+) </summary>
public Vector3 bBezier;
#endregion
#region
/// <summary> 边长度 </summary>
public float length;
/// <summary> 缝合数据 </summary>
public DataSuture suture;
/// <summary> 边缘点 </summary>
public Vector3[] positions = new Vector3[0];
/// <summary> 边缘线 </summary>
public DataLine[] lines = new DataLine[0];
/// <summary> 边缘顶点数据 </summary>
public DataVertex[] vertices = new DataVertex[0];
#endregion
#region
/// <summary> 可视化边缘线 </summary>
public ModulePrefab<DataSide> design;
#endregion
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: d40ac12110b85ce4daf740db4dd0a5ef
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+30
View File
@@ -0,0 +1,30 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataVertex {
/// <summary> 是否是有效顶点 </summary>
public bool isValid;
/// <summary> 设计视图中位置 </summary>
public Vector3 design;
/// <summary> 烘焙视图中位置 </summary>
public Vector3 baking;
/// <summary> 上 </summary>
public DataVertex above;
/// <summary> 下 </summary>
public DataVertex below;
/// <summary> 左 </summary>
public DataVertex left;
/// <summary> 右 </summary>
public DataVertex right;
/// <summary> 左上 </summary>
public DataVertex leftAbove;
/// <summary> 左下 </summary>
public DataVertex leftBelow;
/// <summary> 右上 </summary>
public DataVertex rightAbove;
/// <summary> 右下 </summary>
public DataVertex rightBelow;
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: de6bdf5f7fa27c4409fa7179f281284d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+1 -1
View File
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: b4c187df8599632449d401e9840a5bf9
guid: de9e8e0217c52a447a49c55f818131ef
MonoImporter:
externalObjects: {}
serializedVersion: 2
+7 -21
View File
@@ -3,31 +3,17 @@ using System.Collections.Generic;
using UnityEngine;
public class DataPolygon {
private readonly DataPlate dataPlate;
public DataPolygon(DataPlate dataPlate) => this.dataPlate = dataPlate;
/// <summary> 边缘平滑度 </summary>
public float edgeSmooth => dataPlate.edgeSmooth;
/// <summary> 设计点 </summary>
public List<DataPoint> points => dataPlate.points;
/// <summary> 边缘点 </summary>
public List<Vector3> edgePoints {
get => dataPlate.edgePoints;
set => dataPlate.edgePoints = value;
}
#region
/// <summary> 平面网格 </summary>
public Mesh polygon {
get => dataPlate.polygon;
set => dataPlate.polygon = value;
}
#region
public Mesh mesh;
/// <summary> 三角形数据 </summary>
public List<DataTriangle> triangles;
#endregion
#region
/// <summary> 三角形 </summary>
public List<DataTriangle> triangles = new List<DataTriangle>();
#region
/// <summary> 可视化对象 </summary>
public MeshFilter meshFilter;
#endregion
}
-10
View File
@@ -1,10 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataPopup {
public string name;
public string content;
public Action callback;
}
-11
View File
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 528676abe5379b9478c1c59c6c2d2274
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 152682a505646cc41a3bb70493adf97d
guid: 90a78d920e0cdd4458a7c0c93646c461
folderAsset: yes
DefaultImporter:
externalObjects: {}
@@ -0,0 +1,34 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataSuture {
/// <summary> 核心模块 </summary>
private ModuleCore ModuleCore => ModuleCore.I;
/// <summary> 简单多边形算法模块 </summary>
private ModuleAlgorithm<DataSutureSide> AlgorithmSutureSide => ModuleCore.AlgorithmSutureSide;
public readonly DataSutureSide a;
public readonly DataSutureSide b;
public DataSuture(DataSide aSide, DataSide bSide) {
a = new DataSutureSide(aSide, this);
b = new DataSutureSide(bSide, this);
Update();
}
public void Update() {
AlgorithmSutureSide.Compute(a);
AlgorithmSutureSide.Compute(b);
}
/// <summary> 缝合长度 </summary>
public float length => this.SutureLength();
#region
/// <summary> 可视化内容 </summary>
public ModulePrefab<DataSuture> design;
/// <summary> 可视化对象 </summary>
public ModulePrefab<DataSuture> baking;
#endregion
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: db7180cdc51fba54ebc54927eaa2c246
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,59 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
/// <summary>
/// 缝合边
/// </summary>
public class DataSutureSide {
/// <summary> 关联的边 </summary>
public readonly DataSide side;
/// <summary> 关联的缝合数据 </summary>
public readonly DataSuture suture;
/// <summary> 缝合边 </summary>
public DataSutureSide(DataSide side, DataSuture suture) {
this.side = side;
this.suture = suture;
}
#region
/// <summary> 是否反转 </summary>
public bool isReversal;
#endregion
#region
/// <summary> 边最大长度 </summary>
public float MaxLength => side.length;
/// <summary> 边缘顶点数据 </summary>
public DataVertex[] Vertices => side.vertices;
/// <summary> 设计视图板片位置 </summary>
public Vector3 PlateDesignPosition => side.plate.designPosition;
/// <summary> 烘焙视图板片位置 </summary>
public Vector3 PlateBakingPosition => side.plate.bakingPosition;
/// <summary> 烘焙视图板片位置 </summary>
public Vector3 PlateBakingEulerAngles => side.plate.bakingEulerAngles;
/// <summary> 设计视图顶点位置 </summary>
public Vector3[] designPositions;
/// <summary> 设计视图A点位置 </summary>
public Vector3 DesignPosintA => designPositions[0];
/// <summary> 设计视图B点位置 </summary>
public Vector3 DesignPosintB => designPositions[designPositions.Length - 1];
/// <summary> 烘焙视图顶点位置 </summary>
public Vector3[] bakingPositions;
/// <summary> 烘焙视图A点位置 </summary>
public Vector3 BakingPosintA => bakingPositions[0];
/// <summary> 烘焙视图B点位置 </summary>
public Vector3 BakingPosintB => bakingPositions[bakingPositions.Length - 1];
#endregion
#region
/// <summary> 可视化对象 </summary>
public ModulePrefab<DataSutureSide> design;
/// <summary> 可视化对象 </summary>
public ModulePrefab<DataSutureSide> baking;
#endregion
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: cd87f3680da7d114ca6d49384e0212a4
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -2,7 +2,7 @@ using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataTriangle {
public struct DataTriangle {
public Vector3 a;
public Vector3 b;
public Vector3 c;
-10
View File
@@ -1,10 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DataUIMouseInput {
public float ScrollWheel;
public Vector3 ViewPosition;
public Vector3 WorldPosition;
public Vector3 ScreenPosition;
}
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: aa77786584d959a418d65b0eb3066b4d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
-8
View File
@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: ada184a497ebf2c429faa290f243c729
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
-8
View File
@@ -1,8 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Video;
public abstract class DataVideo {
public abstract void SetPlayer(VideoPlayer videoPlayer);
}
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 9a01c571f20c209448f6d8b551072ad1
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,20 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Video;
public class DataVideoClip : DataVideo {
public readonly VideoClip videoClip;
public DataVideoClip(VideoClip videoClip) {
this.videoClip = videoClip;
}
public override void SetPlayer(VideoPlayer videoPlayer) {
videoPlayer.source = VideoSource.VideoClip;
videoPlayer.clip = videoClip;
}
public static List<DataVideoClip> ToData(List<VideoClip> list) {
List<DataVideoClip> dataVideoClips = new List<DataVideoClip>();
list.ForEach(obj => dataVideoClips.Add(new DataVideoClip(obj)));
return dataVideoClips;
}
}
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: c2c44e2fe4d55a44588a6646e4b579ed
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -1,20 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Video;
public class DataVideoWeb : DataVideo {
public readonly string url;
public DataVideoWeb(string url) {
this.url = url;
}
public override void SetPlayer(VideoPlayer videoPlayer) {
videoPlayer.source = VideoSource.Url;
videoPlayer.url = url;
}
public static List<DataVideoWeb> ToData(List<string> list) {
List<DataVideoWeb> dataVideoWebs = new List<DataVideoWeb>();
list.ForEach(obj => dataVideoWebs.Add(new DataVideoWeb(obj)));
return dataVideoWebs;
}
}
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: fb2c58a6389cbd648b622a45ed1cd861
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
-13
View File
@@ -1,13 +0,0 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Video;
public class DataVideoImage {
public DataVideo dataVideo;
public Sprite sprite;
public DataVideoImage(VideoClip clip, Sprite sprite) {
this.dataVideo = new DataVideoClip(clip);
this.sprite = sprite;
}
}
-11
View File
@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 9d1c81e92812eaa47a063c2917c8ea33
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: