notice plane transparency artifact
parent
1314d7cc1a
commit
deb8e6566c
|
@ -13,6 +13,7 @@ const names = []
|
|||
try {
|
||||
const files = await fs.promises.readdir(dir);
|
||||
for (const file of files) {
|
||||
console.log(file)
|
||||
const res = await fs.promises.readFile(dir+file, 'utf-8')
|
||||
let name = file.split('.')[0]
|
||||
name = name[0].toUpperCase() + name.slice(1)
|
||||
|
@ -28,7 +29,7 @@ try {
|
|||
output.push(`export { ${names.join(', ')} };`)
|
||||
|
||||
|
||||
const data = fs.writeFileSync('../src/icons.jsx', output.join(''))
|
||||
const data = fs.writeFileSync('../src/react/icons.jsx', output.join(''))
|
||||
|
||||
|
||||
} catch (err) {
|
||||
|
|
|
@ -0,0 +1,73 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="16"
|
||||
height="16"
|
||||
fill="currentColor"
|
||||
class="bi bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
version="1.1"
|
||||
id="svg4"
|
||||
sodipodi:docname="intersect_thin.svg"
|
||||
inkscape:version="1.0.2 (1.0.2+r75+1)">
|
||||
<metadata
|
||||
id="metadata10">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs8" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="2560"
|
||||
inkscape:window-height="1403"
|
||||
id="namedview6"
|
||||
showgrid="false"
|
||||
inkscape:zoom="63.096953"
|
||||
inkscape:cx="12.195007"
|
||||
inkscape:cy="4.8433756"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg4"
|
||||
inkscape:document-rotation="0" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:0.7;stroke:none;stroke-width:1.36009;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
d="m 5.1107682,5.0924028 c -0.021633,0.1942283 -0.059281,0.3835491 -0.059281,0.5836927 0,2.9081944 2.3450392,5.2532345 5.2532328,5.2532345 0.200144,0 0.389465,-0.03765 0.583694,-0.05928 V 5.6760955 c 0,-0.3334621 -0.250231,-0.5836927 -0.583694,-0.5836927 z"
|
||||
id="path958" />
|
||||
<rect
|
||||
style="fill:none;fill-opacity:0.697106;stroke:#000000;stroke-width:0.6;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect833"
|
||||
width="10"
|
||||
height="10"
|
||||
x="1"
|
||||
y="5"
|
||||
rx="1"
|
||||
ry="1" />
|
||||
<circle
|
||||
style="fill:none;fill-opacity:0.697106;stroke:#000000;stroke-width:0.6;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path835"
|
||||
cx="10"
|
||||
cy="6"
|
||||
r="5" />
|
||||
</svg>
|
After Width: | Height: | Size: 2.5 KiB |
|
@ -0,0 +1,81 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="16"
|
||||
height="16"
|
||||
fill="currentColor"
|
||||
class="bi bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
version="1.1"
|
||||
id="svg4"
|
||||
sodipodi:docname="union_thin.svg"
|
||||
inkscape:version="1.0.2 (1.0.2+r75+1)">
|
||||
<metadata
|
||||
id="metadata10">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs8" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1514"
|
||||
inkscape:window-height="1169"
|
||||
id="namedview6"
|
||||
showgrid="false"
|
||||
inkscape:zoom="30.162102"
|
||||
inkscape:cx="3.4385179"
|
||||
inkscape:cy="3.8467787"
|
||||
inkscape:window-x="280"
|
||||
inkscape:window-y="90"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg4"
|
||||
inkscape:document-rotation="0" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:0.7;stroke:none;stroke-width:1.24744;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
d="M 5.382896,5.3299006 C 5.3630551,5.5080423 5.3285246,5.681683 5.3285246,5.86525 c 0,2.6673286 2.1508156,4.818144 4.8181444,4.818144 0.183567,0 0.357207,-0.03453 0.535349,-0.05437 V 5.86525 c 0,-0.3058436 -0.229505,-0.5353494 -0.535349,-0.5353494 z"
|
||||
id="path958" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:0.7;stroke:none;stroke-width:1.26153;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
d="m 1.8992563,4.8989629 c -0.3092992,0 -0.541398,0.2320989 -0.541398,0.5413981 v 8.662369 c 0,0.309301 0.2320988,0.541399 0.541398,0.541399 h 8.6623697 c 0.309301,0 0.541399,-0.232098 0.541399,-0.541399 v -2.734483 c -0.178843,0.01625 -0.358408,0.0275 -0.541399,0.0275 -3.2826524,0 -5.9553792,-2.6727275 -5.9553792,-5.9553799 0,-0.1829908 0.01124,-0.3625553 0.027494,-0.5413981 z"
|
||||
id="path956" />
|
||||
<path
|
||||
style="fill:#000000;fill-opacity:0.7;stroke:none;stroke-width:1.25561;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
||||
d="m 9.8153527,1.31679 c -2.1143158,0 -3.8868797,1.3513239 -4.5529312,3.2331494 h 4.5529312 c 0.8862613,0 1.6165743,0.7303132 1.6165743,1.6165748 v 4.5529298 c 1.881825,-0.66605 3.233149,-2.438614 3.233149,-4.5529298 0,-2.6848113 -2.164913,-4.8497242 -4.8497233,-4.8497242 z"
|
||||
id="path954" />
|
||||
<rect
|
||||
style="fill:none;fill-opacity:0.697106;stroke:#000000;stroke-width:0.9;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="rect833"
|
||||
width="10"
|
||||
height="10"
|
||||
x="1"
|
||||
y="5"
|
||||
rx="1"
|
||||
ry="1" />
|
||||
<circle
|
||||
style="fill:none;fill-opacity:0.697106;stroke:#000000;stroke-width:0.9;stroke-linecap:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||
id="path835"
|
||||
cx="10"
|
||||
cy="6"
|
||||
r="5" />
|
||||
</svg>
|
After Width: | Height: | Size: 3.5 KiB |
|
@ -164,6 +164,7 @@ class Sketch {
|
|||
this.canvas.removeEventListener('pointermove', this.onHover)
|
||||
this.store.dispatch({ type: 'exit-sketch' })
|
||||
this.labelContainer.innerHTML = ""
|
||||
this.scene.axes.visible = false
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -23,7 +23,7 @@ class AxesHelper extends THREE.Object3D {
|
|||
new THREE.Vector3(...dir), // dir
|
||||
new THREE.Vector3(0, 0, 0), // origin
|
||||
this.length[i], //length
|
||||
0x0000ff,
|
||||
0xcc1f1a,
|
||||
this.headLength,
|
||||
this.headWidth
|
||||
)
|
||||
|
|
|
@ -0,0 +1,276 @@
|
|||
import * as React from "react";
|
||||
function Arc(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<g stroke="currentColor" strokeLinecap="round">
|
||||
<path
|
||||
d="M7.75 2.35a13 13 0 016.5 11.281"
|
||||
fill="none"
|
||||
strokeWidth={1.5}
|
||||
/>
|
||||
<path
|
||||
fill="#fff"
|
||||
d="M.75 12.631h2v2h-2zM6.75 1.35h2v2h-2zM13.25 12.631h2v2h-2z"
|
||||
/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
|
||||
function Dimension(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
fill="currentColor"
|
||||
className="prefix__bi prefix__bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<defs>
|
||||
<marker
|
||||
id="prefix__a"
|
||||
refX={0}
|
||||
refY={0}
|
||||
orient="auto"
|
||||
overflow="visible"
|
||||
>
|
||||
<path
|
||||
d="M-1.154 0l1.73-1v2l-1.73-1z"
|
||||
fillRule="evenodd"
|
||||
stroke="currentColor"
|
||||
strokeWidth=".2pt"
|
||||
fill="currentColor"
|
||||
/>
|
||||
</marker>
|
||||
<marker
|
||||
id="prefix__b"
|
||||
refX={0}
|
||||
refY={0}
|
||||
orient="auto"
|
||||
overflow="visible"
|
||||
>
|
||||
<path
|
||||
d="M1.154 0l-1.73 1v-2l1.73 1z"
|
||||
fillRule="evenodd"
|
||||
stroke="currentColor"
|
||||
strokeWidth=".2pt"
|
||||
fill="currentColor"
|
||||
/>
|
||||
</marker>
|
||||
</defs>
|
||||
<path
|
||||
d="M4.009 10.009l6-6"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={2}
|
||||
markerStart="url(#prefix__a)"
|
||||
markerEnd="url(#prefix__b)"
|
||||
/>
|
||||
<path
|
||||
d="M15.485 4.516l-4-4M4.516 15.485l-4-4"
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={0.893}
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
|
||||
function Intersect(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
fill="currentColor"
|
||||
className="prefix__bi prefix__bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<path
|
||||
d="M5.55 5.5c-.018.166-.05.329-.05.5 0 2.491 2.009 4.5 4.5 4.5.171 0 .334-.032.5-.05V6c0-.286-.214-.5-.5-.5z"
|
||||
fill="currentColor"
|
||||
fillOpacity={0.7}
|
||||
/>
|
||||
<rect
|
||||
width={10}
|
||||
height={10}
|
||||
x={1}
|
||||
y={5}
|
||||
rx={1}
|
||||
ry={1}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={1.5}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
<circle
|
||||
cx={10}
|
||||
cy={6}
|
||||
r={5}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={1.5}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
|
||||
function Intersect_thin(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
fill="currentColor"
|
||||
className="prefix__bi prefix__bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<path
|
||||
d="M5.11 5.092c-.02.195-.059.384-.059.584a5.244 5.244 0 005.254 5.253c.2 0 .39-.037.583-.059V5.676a.57.57 0 00-.583-.584z"
|
||||
fill="currentColor"
|
||||
fillOpacity={0.7}
|
||||
/>
|
||||
<rect
|
||||
width={10}
|
||||
height={10}
|
||||
x={1}
|
||||
y={5}
|
||||
rx={1}
|
||||
ry={1}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={0.4}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
<circle
|
||||
cx={10}
|
||||
cy={6}
|
||||
r={5}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={0.4}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
|
||||
function Line(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<g stroke="currentColor">
|
||||
<path d="M2 14l3-6h6l3-6" fill="none" strokeWidth={1.5} />
|
||||
<path
|
||||
fill="#fff"
|
||||
strokeLinecap="round"
|
||||
d="M1 13h2v2H1zM4 7h2v2H4zM10 7h2v2h-2zM13 1h2v2h-2z"
|
||||
/>
|
||||
</g>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
|
||||
function Subtract(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
fill="currentColor"
|
||||
className="prefix__bi prefix__bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<path
|
||||
d="M2 5.5c-.286 0-.5.214-.5.5v8c0 .286.214.5.5.5h8c.286 0 .5-.214.5-.5v-2.525a5.504 5.504 0 01-.5.025A5.508 5.508 0 014.5 6c0-.169.01-.335.025-.5z"
|
||||
fill="currentColor"
|
||||
fillOpacity={0.7}
|
||||
/>
|
||||
<rect
|
||||
width={10}
|
||||
height={10}
|
||||
x={1}
|
||||
y={5}
|
||||
rx={1}
|
||||
ry={1}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={1.5}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
<circle
|
||||
cx={10}
|
||||
cy={6}
|
||||
r={5}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={1.5}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
|
||||
function Union(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
fill="currentColor"
|
||||
className="prefix__bi prefix__bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<path
|
||||
d="M5.55 5.5c-.018.166-.05.329-.05.5 0 2.491 2.009 4.5 4.5 4.5.171 0 .334-.032.5-.05V6c0-.286-.214-.5-.5-.5z"
|
||||
fill="currentColor"
|
||||
fillOpacity={0.7}
|
||||
/>
|
||||
<path
|
||||
d="M2 5.5c-.286 0-.5.214-.5.5v8c0 .286.214.5.5.5h8c.286 0 .5-.214.5-.5v-2.525a5.504 5.504 0 01-.5.025A5.508 5.508 0 014.5 6c0-.169.01-.335.025-.5zM10 1.5a4.477 4.477 0 00-4.225 3H10c.822 0 1.5.678 1.5 1.5v4.225A4.477 4.477 0 0014.5 6c0-2.491-2.009-4.5-4.5-4.5z"
|
||||
fill="currentColor"
|
||||
fillOpacity={0.7}
|
||||
/>
|
||||
<rect
|
||||
width={10}
|
||||
height={10}
|
||||
x={1}
|
||||
y={5}
|
||||
rx={1}
|
||||
ry={1}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={1.5}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
<circle
|
||||
cx={10}
|
||||
cy={6}
|
||||
r={5}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={1.5}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
export { Arc, Dimension, Intersect, Intersect_thin, Line, Subtract, Union };
|
|
@ -48,8 +48,15 @@ body {
|
|||
.btn {
|
||||
cursor: pointer;
|
||||
@apply fill-current
|
||||
bg-gray-100 text-green-600
|
||||
hover:bg-gray-200 hover:text-green-700;
|
||||
bg-transparent text-gray-200
|
||||
hover:bg-gray-600 hover:text-gray-200;
|
||||
}
|
||||
|
||||
.btn-light {
|
||||
cursor: pointer;
|
||||
@apply fill-current
|
||||
bg-transparent text-gray-700
|
||||
hover:bg-gray-300 hover:text-gray-700;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -125,6 +125,47 @@ function Intersect(props) {
|
|||
);
|
||||
}
|
||||
|
||||
function Intersect_thin(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
fill="currentColor"
|
||||
className="prefix__bi prefix__bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<path
|
||||
d="M5.11 5.092c-.02.195-.059.384-.059.584a5.244 5.244 0 005.254 5.253c.2 0 .39-.037.583-.059V5.676a.57.57 0 00-.583-.584z"
|
||||
fill="currentColor"
|
||||
fillOpacity={0.7}
|
||||
/>
|
||||
<rect
|
||||
width={10}
|
||||
height={10}
|
||||
x={1}
|
||||
y={5}
|
||||
rx={1}
|
||||
ry={1}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={0.6}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
<circle
|
||||
cx={10}
|
||||
cy={6}
|
||||
r={5}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={0.6}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
|
||||
function Line(props) {
|
||||
return (
|
||||
<svg
|
||||
|
@ -232,4 +273,50 @@ function Union(props) {
|
|||
</svg>
|
||||
);
|
||||
}
|
||||
export { Arc, Dimension, Intersect, Line, Subtract, Union };
|
||||
|
||||
function Union_thin(props) {
|
||||
return (
|
||||
<svg
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
width="1em"
|
||||
height="1em"
|
||||
fill="currentColor"
|
||||
className="prefix__bi prefix__bi-intersect"
|
||||
viewBox="0 0 16 16"
|
||||
{...props}
|
||||
>
|
||||
<path
|
||||
d="M5.383 5.33c-.02.178-.054.352-.054.535a4.81 4.81 0 004.818 4.818c.183 0 .357-.034.535-.054V5.865a.523.523 0 00-.535-.535z"
|
||||
fill="currentColor"
|
||||
fillOpacity={0.7}
|
||||
/>
|
||||
<path
|
||||
d="M1.9 4.899a.529.529 0 00-.542.541v8.663c0 .309.232.541.541.541h8.663c.309 0 .541-.232.541-.541v-2.735a5.962 5.962 0 01-.541.028A5.964 5.964 0 014.606 5.44c0-.183.011-.362.028-.541zM9.815 1.317c-2.114 0-3.887 1.351-4.553 3.233h4.553c.887 0 1.617.73 1.617 1.617v4.552c1.882-.666 3.233-2.438 3.233-4.552a4.842 4.842 0 00-4.85-4.85z"
|
||||
fill="currentColor"
|
||||
fillOpacity={0.7}
|
||||
/>
|
||||
<rect
|
||||
width={10}
|
||||
height={10}
|
||||
x={1}
|
||||
y={5}
|
||||
rx={1}
|
||||
ry={1}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={0.9}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
<circle
|
||||
cx={10}
|
||||
cy={6}
|
||||
r={5}
|
||||
fill="none"
|
||||
stroke="currentColor"
|
||||
strokeWidth={0.9}
|
||||
strokeLinecap="round"
|
||||
/>
|
||||
</svg>
|
||||
);
|
||||
}
|
||||
export { Arc, Dimension, Intersect, Intersect_thin, Line, Subtract, Union, Union_thin };
|
|
@ -58,10 +58,10 @@ export const NavBar = () => {
|
|||
|
||||
const [_, forceUpdate] = useReducer(x => x + 1, 0);
|
||||
|
||||
return <div className='topNav flex justify-center items-center'>
|
||||
return <div className='topNav flex justify-center items-center bg-gray-800'>
|
||||
{
|
||||
btnz.map(([Icon, fcn, txt], idx) => (
|
||||
<Icon className="btn w-auto h-full p-2" tooltip={txt}
|
||||
<Icon className="btn w-auto h-full p-3" tooltip={txt}
|
||||
onClick={fcn} key={idx}
|
||||
/>
|
||||
))
|
||||
|
|
|
@ -39,7 +39,7 @@ const TreeEntry = ({ entId }) => {
|
|||
const vis = obj3d.visible
|
||||
|
||||
return <div className='bg-gray-50 flex justify-between w-full'>
|
||||
<div className="btn"
|
||||
<div className="btn-light"
|
||||
onPointerEnter={() => {
|
||||
if (entId[0] == 'm') {
|
||||
// entry.material.color.set(color.hover)
|
||||
|
@ -65,7 +65,7 @@ const TreeEntry = ({ entId }) => {
|
|||
{entId}
|
||||
</div>
|
||||
<div className='flex'>
|
||||
<div className='btn'
|
||||
<div className='btn-light'
|
||||
onClick={() => {
|
||||
activeSketchId && treeEntries[activeSketchId].deactivate()
|
||||
entry.activate()
|
||||
|
@ -76,7 +76,7 @@ const TreeEntry = ({ entId }) => {
|
|||
<MdEdit />
|
||||
</div>
|
||||
|
||||
<div className='btn'
|
||||
<div className='btn-light'
|
||||
onClick={() => {
|
||||
dispatch({ type: 'delete-node', id: entId })
|
||||
}}
|
||||
|
@ -85,7 +85,7 @@ const TreeEntry = ({ entId }) => {
|
|||
</div>
|
||||
{
|
||||
vis ?
|
||||
<div className='btn'
|
||||
<div className='btn-light'
|
||||
onClick={() => {
|
||||
obj3d.visible = false;
|
||||
sc.render()
|
||||
|
@ -95,7 +95,7 @@ const TreeEntry = ({ entId }) => {
|
|||
<MdVisibility />
|
||||
</div>
|
||||
:
|
||||
<div className='btn'
|
||||
<div className='btn-light'
|
||||
onClick={() => {
|
||||
obj3d.visible = true;
|
||||
sc.render()
|
||||
|
|
|
@ -12,7 +12,7 @@ raycaster.params.Points.threshold = 0.1;
|
|||
|
||||
|
||||
const color = {
|
||||
background:0xbbbbbb,
|
||||
background:0xdae1e7,
|
||||
lighting: 0xFFFFFF,
|
||||
emissive: 0x072534,
|
||||
|
||||
|
|
3
todo.txt
3
todo.txt
|
@ -1,6 +1,7 @@
|
|||
fix css on design tree (a lot of work) \
|
||||
clear dim on exit exit sketch / rehydrate when back or after loading \\\ done
|
||||
|
||||
dimension to origin // done
|
||||
|
||||
|
||||
- select sketch for extrusion
|
||||
|
@ -21,8 +22,6 @@ extrude edit dialog. directio and magnitude
|
|||
|
||||
fix extrusion loop find
|
||||
|
||||
dimension to origin
|
||||
|
||||
file save
|
||||
stl export
|
||||
|
||||
|
|
Loading…
Reference in New Issue