Changes
Co-authored-by: Reifonas <211114984+Reifonas@users.noreply.github.com>
This commit is contained in:
+12
-6
@@ -296,13 +296,19 @@ function XRMeasurementOverlay() {
|
|||||||
const a: [number, number, number] = [m.pointA.x, m.pointA.y, m.pointA.z];
|
const a: [number, number, number] = [m.pointA.x, m.pointA.y, m.pointA.z];
|
||||||
const b: [number, number, number] = [m.pointB.x, m.pointB.y, m.pointB.z];
|
const b: [number, number, number] = [m.pointB.x, m.pointB.y, m.pointB.z];
|
||||||
const mid: [number, number, number] = [(a[0]+b[0])/2, (a[1]+b[1])/2, (a[2]+b[2])/2];
|
const mid: [number, number, number] = [(a[0]+b[0])/2, (a[1]+b[1])/2, (a[2]+b[2])/2];
|
||||||
|
const isHole = m.kind === 'hole';
|
||||||
|
const color = isHole ? '#f59e0b' : '#3b82f6';
|
||||||
|
const text = m.label ?? `${m.distanceMM.toFixed(1)} mm`;
|
||||||
return (
|
return (
|
||||||
<group key={m.id}>
|
<group key={m.id}>
|
||||||
<mesh position={a}><sphereGeometry args={[0.003, 16, 16]} /><meshBasicMaterial color="#22c55e" /></mesh>
|
{!isHole && (
|
||||||
<mesh position={b}><sphereGeometry args={[0.003, 16, 16]} /><meshBasicMaterial color="#22c55e" /></mesh>
|
<>
|
||||||
<Line points={[a, b]} color="#22c55e" lineWidth={2} />
|
<mesh position={a}><sphereGeometry args={[0.003, 16, 16]} /><meshBasicMaterial color="#22c55e" /></mesh>
|
||||||
|
<mesh position={b}><sphereGeometry args={[0.003, 16, 16]} /><meshBasicMaterial color="#22c55e" /></mesh>
|
||||||
|
<Line points={[a, b]} color="#22c55e" lineWidth={2} />
|
||||||
|
</>
|
||||||
|
)}
|
||||||
<group position={mid}>
|
<group position={mid}>
|
||||||
{/* Background plate */}
|
|
||||||
<mesh position={[0, 0, 0]} renderOrder={998}>
|
<mesh position={[0, 0, 0]} renderOrder={998}>
|
||||||
<planeGeometry args={[0.09, 0.024]} />
|
<planeGeometry args={[0.09, 0.024]} />
|
||||||
<meshBasicMaterial color="#0b1220" transparent opacity={0.85} depthTest={false} />
|
<meshBasicMaterial color="#0b1220" transparent opacity={0.85} depthTest={false} />
|
||||||
@@ -310,13 +316,13 @@ function XRMeasurementOverlay() {
|
|||||||
<Text
|
<Text
|
||||||
position={[0, 0, 0.001]}
|
position={[0, 0, 0.001]}
|
||||||
fontSize={0.012}
|
fontSize={0.012}
|
||||||
color="#3b82f6"
|
color={color}
|
||||||
anchorX="center"
|
anchorX="center"
|
||||||
anchorY="middle"
|
anchorY="middle"
|
||||||
renderOrder={999}
|
renderOrder={999}
|
||||||
material-depthTest={false}
|
material-depthTest={false}
|
||||||
>
|
>
|
||||||
{`${m.distanceMM.toFixed(1)} mm`}
|
{text}
|
||||||
</Text>
|
</Text>
|
||||||
</group>
|
</group>
|
||||||
</group>
|
</group>
|
||||||
|
|||||||
Reference in New Issue
Block a user