Script (apenas os procedimentos BeforeConnect e OnConnect)
Outros podem ser vistos no banco de dados de detalhes padrão.
// Para flange necessário para restrições geométricas
// Foram instalados na junta e paramétricos -
// O segundo flange.
função OnConnect {
// Ao definir dependências em vários objetos, primeiro
// Armazena informações sobre objetos,
// E então use-o para instalar, dependendo
// Então, a primeira etapa - a seleção dos parâmetros
// Aqui rPart é 0 (o número de série da consulta começa
// 0.
// Se esta for a primeira solicitação e o objeto selecionado = GOST 15180,
// Salva os parâmetros do objeto (pads) sob o número 0
se (rPart == 0 & & obj.strTheName == " GOST 15180-86 ") {
setWorkId (0, obj.objectID);
Manipulado = OBJ_HANDLED;
};
// Para a segunda solicitação - verifique mais detalhadamente se isso
// Flange do objeto GOST 12821 e, em caso afirmativo, salvar os parâmetros deste
// Flange no número 1.
se (rPart == 1 & & obj.strTheName == " GOST 12821-80 ") {
setWorkId (1, obj.objectID);
Manipulado = OBJ_HANDLED;
};
// Em seguida, considere os objetos de dados armazenados:
// Se algo foi preservado no primeiro estágio, ou seja, os dados não são iguais a 0
se (getWorkId(0) = 0)
{
// Restaura a variável do objeto de dados obj 0
obterObjData (obterWorkId (0), obj);
// Mais próximo do plano do ponto de inserção
strPlanoMaisPróximo = ObterPlanoMaisPróximo(pntOrigem);
// Se o avião tivesse sido encontrado,
se (strPlanoMaisPróximo! = ValorDesconhecido) {
// Definimos as restrições geométricas da inserção.
SetGeomConstraint (INSERIR, CONTRDIRECT, obj, WP1, strNearestPlane, 0, VERDADEIRO);
// Não escolha um vetor de direção
NoVectorSelect = 1;
};
};
// Se no último caso os dados foram armazenados, então:
se (getWorkId(1) = 0)
{
// Restaura-os de volta para a variável obj
obterObjData (obterWorkId (1), obj);
// Define um conjunto de dependências paramétricas
// Em pressão nominal, tamanho nominal,
// Forma com flange cortada Série e diversas performances.
SetParamConstraint (Py, obj, EXPR, " obj.Py ", TRUE);
SetParamConstraint (Dy, obj, EXPR, " obj.Dy ", TRUE);
SetParamConstraint (bSection, obj, EXPR, " obj.bSection ", TRUE);
SetParamConstraint (R, obj, EXPR, " obj.R ", TRUE);
SetParamConstraint (isp_row, obj, EXPR, " obj.isp_row ", TRUE);
NoVectorSelect = 1;
};
// Este bloco é realizado ao unir o flange ao tubo
// A primeira solicitação para um tipo de verificação e subtipo
se (rPart == 0 & & obj.strTheType == " Tubo " & & obj.strTheSubType == " Redondo ") {
// É o avião mais próximo
strPlanoMaisPróximo = ObterPlanoMaisPróximo(pntOrigem);
se (strPlanoMaisPróximo! = ValorDesconhecido) {
// Conjunto geométrico
SetGeomConstraint (INSERIR, CONTRDIRECT, obj, WP2, strNearestPlane, 0, VERDADEIRO);
SetGeomConstraint (DIREÇÃO, CODIRECT, obj, WPnormal, obj.WPnormal, 0, VERDADEIRO);
NoVectorSelect = 1;
};
// E dependência paramétrica
SetParamConstraint (Dn, obj, EXPR, " obj.B ", TRUE);
Manipulado = OBJ_HANDLED;
};
};
