Encontra o par de pontos, um em cada forma, que estão mais próximos um do outro.
A distância entre eles é a folga entre as formas; é 0 quando se tocam ou se sobrepõem. Lança um erro quando não é possível encontrar nenhum par.
As duas formas
O ponto na primeira forma e o ponto na segunda
Encontra, para cada ponto de uma lista, o ponto mais próximo numa forma.
Um ponto que já esteja na forma mapeia para si próprio. Útil para encaixar pontos numa superfície.
A forma e os pontos
Um ponto na forma por ponto de entrada, pela mesma ordem
Encontra o ponto mais próximo em cada uma de várias formas para cada ponto de uma lista.
O resultado é uma só lista plana: todos os pontos para a primeira forma, pela ordem dos pontos, depois todos os pontos para a segunda forma, e assim por diante.
As formas e os pontos
Os pontos mais próximos, agrupados forma a forma
Corta uma forma em pedaços com outras formas, como uma faca divide um pão, sem remover qualquer material.
Com nonDestructive verdadeiro, a predefinição, as entradas ficam intactas e o resultado contém
os pedaços de todas as formas envolvidas, cortadores incluídos; com falso só voltam os pedaços de
shape. localFuzzyTolerance permite que geometria que quase se toca conte como tocando.
A forma a dividir, as formas com que a dividir e as opções
As partes
Corta um sólido em fatias paralelas ao longo de uma direção, como um pão, a cada step unidades
do modelo desde o fundo da forma para cima.
Cada fatia é a secção plana onde um plano de corte encontra o sólido; voltam juntas num só composto. A forma tem de ser ou conter sólidos, ou é lançado um erro.
A forma, a distância entre fatias e a direção de corte
Um composto das faces de secção
Corta um sólido em fatias paralelas como slice, mas com um padrão repetido de intervalos entre
elas, como 0.1, 0.5, 0.1, 0.5.
O padrão é aplicado desde o fundo da forma para cima e repete-se até o topo ser alcançado.
A forma, o padrão de intervalos e a direção de corte
Um composto das faces de secção
Varre uma forma em linha reta ao longo de um vetor, cujo comprimento é a distância: uma face torna-se um sólido, um fio uma casca, uma aresta uma face.
A própria forma fica no início da extrusão; o vetor está em unidades do modelo, por isso [0, 10, 0] extrude 10 unidades para cima.
A forma e o vetor de direção, cujo comprimento é a distância
A forma extrudida
Varre várias formas ao longo do mesmo vetor, tal como extrude faz para uma.
As formas e o vetor de direção, cujo comprimento é a distância
As formas extrudidas, pela mesma ordem
Extrude uma forma plana para cima ao longo de Y por height enquanto a torce angle graus em torno do eixo
Y, como uma coluna torcida.
A forma deve assentar plana, como os perfis que este pacote cria. Com makeSolid verdadeiro,
a predefinição, um perfil de face dá um sólido fechado; um fio dá uma casca torcida.
A forma de perfil, a altura, o ângulo de torção em graus e se deve criar um sólido
A extrusão torcida
Constrói uma superfície através de uma série de fios, como pele esticada sobre costelas: cada fio é uma secção e a superfície passa por elas pela ordem da lista.
As arestas são aceites como fios de uma só aresta. Com makeSolid verdadeiro e secções fechadas o resultado
é tapado num sólido; caso contrário é uma casca. As secções emparelham melhor com contagens de arestas
iguais.
Os fios ou arestas de secção, por ordem, e se deve criar um sólido
A casca ou o sólido criados por loft
const bottom = await bitbybit.occt.shapes.wire.createCircleWire({ radius: 5, center: [0, 0, 0], direction: [0, 1, 0] });
const upper = await bitbybit.occt.shapes.wire.createSquareWire({ size: 6, center: [0, 10, 0], direction: [0, 1, 0] });
const vase = await bitbybit.occt.operations.loft({ shapes: [bottom, upper], makeSolid: true });
Constrói uma superfície através de uma série de fios como loft, com controlo sobre como a pele é
ajustada.
straight cria retalhos regrados entre secções em vez de uma transição suave; closed fecha a
superfície da última secção de volta à primeira, e periodic torna esse laço suave
reamostrando as secções. startVertex e endVertex fecham as extremidades em pontos.
Os fios ou arestas de secção, se deve criar um sólido, as opções de fecho e suavização e pontos extremos opcionais
A casca ou o sólido criados por loft
const cone = await bitbybit.occt.operations.loftAdvanced({
shapes: [circleBottom, circleMiddle],
makeSolid: true,
closed: false,
periodic: false,
straight: false,
nrPeriodicSections: 10,
useSmoothing: false,
maxUDegree: 3,
tolerance: 1e-7,
parType: Bit.Inputs.OCCT.approxParametrizationTypeEnum.approxCentripetal,
endVertex: [0, 20, 0],
});
Mede a que distância cada ponto de uma lista está de uma forma, como a distância em linha reta ao ponto mais próximo nela, em unidades do modelo.
A distância é à superfície da forma, por isso um ponto dentro de um sólido reporta na mesma a sua distância à pele.
A forma e os pontos
Uma distância por ponto, pela mesma ordem
Calcula a caixa alinhada com os eixos que envolve uma forma: os seus cantos mínimo e máximo, o seu centro e o seu tamanho ao longo de X, Y e Z.
Em formas curvas a caixa pode ser um pouco maior do que a própria forma, porque o kernel delimita a geometria de controlo em vez da superfície exata.
A forma
A caixa como min, max, center e size
Lê o canto mínimo da caixa delimitadora alinhada com os eixos de uma forma, o ponto com os menores X, Y e Z.
A forma
O canto mínimo
Lê o canto máximo da caixa delimitadora alinhada com os eixos de uma forma, o ponto com os maiores X, Y e Z.
A forma
O canto máximo
Lê o centro da caixa delimitadora alinhada com os eixos de uma forma, a meio caminho entre os seus dois cantos.
Isto não é o centro de massa; shapes.solid.getSolidCenterOfMass e os seus irmãos dão
isso.
A forma
O centro da caixa
Lê o tamanho da caixa delimitadora alinhada com os eixos de uma forma ao longo de X, Y e Z, em unidades do modelo.
A forma
A largura, a altura e o comprimento da caixa
Constrói a caixa delimitadora alinhada com os eixos de uma forma como um sólido de caixa, útil para a desenhar ou usar numa operação booleana.
A forma
O sólido da caixa
Calcula uma esfera que envolve uma forma: é centrada na caixa delimitadora e chega aos seus cantos, por isso contém sempre a forma mas não é a menor esfera possível.
A forma
A esfera como center e radius
Lê o centro da esfera delimitadora de uma forma, que é o centro da sua caixa delimitadora.
A forma
O centro da esfera
Lê o raio da esfera delimitadora de uma forma, a distância do centro da caixa delimitadora ao seu canto, em unidades do modelo.
A forma
O raio
Constrói a esfera delimitadora de uma forma como um sólido de esfera.
A forma
O sólido da esfera
Move a fronteira de uma forma para fora, ou para dentro para uma distância negativa, por uma distância fixa: um fio cresce num contorno paralelo, uma face ou sólido num maior.
Um fio ou aresta é deslocado no seu próprio plano, ou em face quando dada; os cantos são arredondados. Uma
distância de 0 devolve a forma tal como está.
A forma, uma face opcional sobre a qual deslocar um fio, a distância e a tolerância
A forma deslocada
Desloca uma forma como offset, com uma escolha de como os cantos são unidos: arc arredonda-os,
intersection prolonga os lados até um canto vivo, tangent mantém-nos tangentes.
removeIntEdges retira as arestas internas que o deslocamento pode deixar num sólido.
A forma, uma face opcional sobre a qual deslocar um fio, a distância, a tolerância, o tipo de junção dos cantos e se deve remover as arestas internas
A forma deslocada
Dá espessura a uma face ou casca, transformando-a numa placa ou parede sólida com o offset
dado.
Um deslocamento positivo engrossa no sentido da normal da superfície, um negativo no sentido contrário. Use-o para transformar uma pele de loft ou de varredura em algo imprimível.
A face ou a casca e a espessura
O sólido espesso
Esvazia um sólido numa casca com a espessura de parede dada removendo as faces listadas e deslocando o resto.
Remover a face de topo de uma caixa, por exemplo, dá um copo aberto. offset é a espessura da
parede, negativo para crescer para dentro; joinType diz como as paredes deslocadas se encontram nos cantos, os
outros indicadores vão para o construtor de sólidos espessos do kernel.
O sólido, as faces a remover, a espessura da parede, a tolerância e as opções de junção
O sólido oco
const box = await bitbybit.occt.shapes.solid.createBox({ width: 10, length: 10, height: 10, center: [0, 0, 0] });
const faces = await bitbybit.occt.shapes.face.getFaces({ shape: box });
const cup = await bitbybit.occt.operations.makeThickSolidByJoin({
shape: box,
shapes: [faces[0]],
offset: -1,
tolerance: 1e-3,
intersection: false,
selfIntersection: false,
joinType: Bit.Inputs.OCCT.joinTypeEnum.arc,
removeIntEdges: false,
});
Desloca um fio que não assenta num só plano, extrudindo-o ao longo de direction, engrossando
o resultado e lendo a aresta deslocada de volta a partir dele.
Funciona melhor em fios suaves; arredonde primeiro os cantos vivos com fillets.fillet3DWire. Quando
as arestas deslocadas não podem ser unidas num só fio voltam como uma lista de arestas.
O fio, a distância de deslocamento e a direção ao longo da qual extrudir
O fio deslocado, ou as arestas soltas quando não foi possível uni-las
Varre uma ou mais formas de perfil ao longo de um fio de trajeto e fecha o resultado num sólido.
Os perfis devem ser colocados no trajeto; com vários perfis a varredura faz a transição de um para o seguinte pelo caminho.
O fio de caminho e as formas de perfil colocadas nele
O sólido varrido
Varre um polígono regular ao longo de um fio, dando um tubo com nrCorners lados planos, por
exemplo uma barra hexagonal ao longo de um trajeto.
O polígono de radius é colocado no início do fio, perpendicular a ele. makeSolid
dá um sólido em vez de uma casca, trihedronEnum escolhe como o perfil roda ao longo do
trajeto, e forceApproxC1 suaviza o resultado.
O fio de caminho, o raio e o número de cantos do polígono, e as opções de varredura
O sólido ou a casca varridos
Varre um círculo ao longo de cada um de vários fios, tal como pipeWireCylindrical faz para um, todos com
o mesmo raio e opções.
Os fios de caminho, o raio e as opções de varredura
Um tubo por fio, pela mesma ordem
Varre um círculo ao longo de um fio, dando um tubo redondo com o raio dado que segue o trajeto.
O círculo é colocado no início do fio, perpendicular a ele. makeSolid dá um sólido
em vez de uma casca, trihedronEnum escolhe como o perfil roda ao seguir o trajeto, e
forceApproxC1 suaviza o resultado.
O fio de caminho, o raio e as opções de varredura
O tubo como sólido ou casca
Roda uma forma em torno de um eixo pela origem para varrer uma superfície ou sólido: uma face dá um sólido, um fio uma casca.
angle está em graus; 360 ou mais dá uma volta completa. O eixo corre ao longo de direction: um
perfil ao lado do eixo Y revolvido em torno dele dá um vaso. O perfil não o pode cruzar.
A forma de perfil, o ângulo em graus, a direção do eixo e se deve copiar a geometria
A forma de revolução
As operações de modelação que transformam fios e faces OpenCascade em superfícies e sólidos e medem formas: loft através de secções, extrudir e revolver, varrer perfis ao longo de caminhos, deslocar, espessar cascas em sólidos, fatiar e dividir, mais caixas delimitadoras, esferas delimitadoras e consultas de ponto mais próximo. As distâncias estão em unidades do modelo e os ângulos em graus; cada operação devolve uma nova forma. As operações booleanas vivem em
booleans, o arredondamento emfillets.