Español
Foro

Alguien Fit en Mathe?

 

ByteAttack
¡Hola!
Tal vez hay el una oder otro el Fit en Mathe es.
Yo brauche veces una Formelsammlung y zwar en XYZ-Daten en YBC (sprich LRA) umzuwandeln. Posesiones zwar para MatLab una PlugIn gefunden, voluntad Yo aber por desgracia, no schlau draus. Möchte el gerne bajo XProfan berechnen.

Saludo Marc-Gordon

Plugin:
KompilierenMarcaSeparación
%XYZ2YBC convert form XYZ coordinate to YBC format (LRA)
%   XYZ2YBC(X,Y,Z) convert the X,Y,Z values to Y,B,C values. assuming the bend
%   radius is zero. the size of X,Y and Z must be the same.
%
%   XYZ2YBC(X,Y,Z,R) where R is the bend radius. convert the X,Y,Z values to
%   Y,B,C values, taking in to account the bend radius R.
%
%   XYZ2YBC(X,Y,Z,R) where R is the bend radius matrix for each bend. convert
%   the X,Y,Z values to Y,B,C values, taking in to account the bend radius R
%   for each bend.  size of R must be less than the number of XYZ points by 2.
%
%   returns Y length between bends, B rotation between bends in radius,+ for
%   clockwise and - for anticlockwise, C angle of bend in radius.
%
% File: xyz2ybc
% Author: Ammar Mousali
% Date:   29/04/2004
% Griffith University
% V1.1
%
% changes from V1.0
%   changed the output from degrees to radius.
%
function [Y,B,C] = xyz2ybc(Xc,Yc,Zc,R)
if( (length(Xc) ~= length(Yc)) | (length(Xc) ~= length(Zc)) )
error('X,Y,Z are not the same size');
end
if(nargin == 3)
% set the bend radius to zero for all bends.
R = zeros(1,length(Xc)-2);
elseif(length(R) == 1)
% set the bend radius to R for all bends.
R = ones(1,length(Xc)-2).*R;
elseif(length(R) ~= length(Xc)-2)
error('R size doesnt match the number of bends');
end
% number of bends is less than the number of XYZ points by 2.
for i = 1:length(Xc)-2
% calculate the 2 vectors BA and BC, representing an angle ABC.
V1 = [Xc(i)-Xc(i+1) ; Yc(i)-Yc(i+1) ; Zc(i)-Zc(i+1)];
V2 = [Xc(i+2)-Xc(i+1) ; Yc(i+2)-Yc(i+1) ; Zc(i+2)-Zc(i+1)];
% calculate the length of vectors BA and BC.
V1l = Vlength(V1);
V2l = Vlength(V2);
% calculate the angle between the 2 vectors BA and BC.
C(i) = pi - acos(dot(V1,V2) / (V1l*V2l));
% calculate the vector perpendicular to the plan ABC.
planeV(i,:) = cross(V1,V2)';
if(i>1)
% calculate the length of the straight by subtracting the tangent of
% the bend angle.
Y(i) = Y(i) - R(i)*tan(C(i)/2);
Y(i+1) = V2l - R(i)*tan(C(i)/2);
% calculate the length of vectors perpendicular to the plan ABC and
% the plan of the bend before it.
PV1l = Vlength(planeV(i-1,:));
PV2l = Vlength(planeV(i,:));
% calculate the rotation direction.  negative if counter clockwise.
s=sign(V1 .* cross(planeV(i-1,:),planeV(i,:))');
% calculate the rotation angle and multiply by the rotation direction.
B(i) = acos(dot(planeV(i-1,:),planeV(i,:))/(PV1l*PV2l))*s(1);

else

% calculate the length of the straight by subtracting the tangent of
% the bend angle.
Y(i) = V1l - R(i)*tan(C(i)/2);
Y(i+1) = V2l - R(i)*tan(C(i)/2);
% rotation of the first bend is always zero.
B(i) = 0;
end
end
% calculate the length of a 3D vector.
function l=Vlength(V)
l = sqrt(V(1)^2 + V(2)^2 + V(3a class=s2>)^2);
 
17.02.2013  
 




ByteAttack
keiner el tal vez Matlab ha?
 
21.02.2013  
 



Also mich überforderts,

intelleleluell y zeitlich sodass Yo mich como eben no fix rein y denken kann.

Vlt. kannst Usted veces escribir qué Usted hacer möchtest, entonces ists vlt. einfacher.
 
21.02.2013  
 




ByteAttack


OK! Yo habe una technische Zeichnung, el me todos Biegekoordinaten en XYZ angibt. Und zwar el Rohranfang (Meißt X=0,Y=0,Z=0) y luego siempre genau el Mittelpunkt el Biegung, sowie el Rohrende! (rotes + siehe Bild)
Das Yo weiß son sólo el Koordinaten, sowie el Biegeradius.
Diese debería ahora umgerechnet voluntad en Longitud, Drehung, Biegewinkel.



Posesiones como una Ejemplo gefunden: (Biegeradius 30)

X Y Z
0 |0 |0 ' Anfang Rohr
100 | 0 |0 ' Erster Bogen
150 | 40 |0 ' Zweiter Bogen
50 | 100 | 80 'Ende Rohn

ergibt

L R A (Longitud, Drehung, Biegung)
89,477 0° 38,66°
13,197 -36,20° 106,69°
 
22.02.2013  
 



Hm y si simplemente una gerades Rohr kaufst?
 
22.02.2013  
 




ByteAttack
Gerades Rohr Yo sí - Will lo sólo Krum hacer
 
22.02.2013  
 



Hm also normal es el no.

Yo versuch mich grad intelleuel en el Rohr hinein a versetzen,
Stein ha glaube ya veces geklappt.

Wenn Yo el correcto verstehe entonces hast Usted also 3 XYZ Koordinaten y möchtest
de XYZ[1..3] después de XYZ[1..2] & LRA[1] rechnen, wobei natürlich sólo LRA auszurechnen
wäre porque XYZ[1..2] como 3D-Vektor ya bekannt es?

Also primero el Drehung rechnen el notwendig es en vom Vektor XYZ[1-2] en
el Koordinate XYZ[3] a kommen y el Longitud debería entonces tal vez de el
Biegung abhängen oder anders herum o. va uno esta de uno linearen
Biegeverbiegung de?

Yo glaube el el Formel como oben todavía einiges mehr macht quasi como Industrie-
Formel y uno ellos para exakte Ergebnisse genau traducir debería, Yo aber
no kann, como Yo no weiß Yo el código a interpretar habe.
 
22.02.2013  
 




ByteAttack
Exactamente el es mein Problema. Yo blick el con el Matlab net...
 
22.02.2013  
 



Siehst Usted lo auch así, dass el L(ength) "nur" el Distanz zweier XYZ-Koordinaten
es wonach L = sqrt((x2-x1)*(x2-x1) + (y2-y1)*(y2-y1) + (z2-z1)*(z2-z1)) wäre?

A(ngle) herausbekommen lugar Yo bisher así antes, dass uno el 3D-Koordinaten
en un 2D-Räpresentation umwandelt podría y así simplemente el Winkel zwischen
beiden Punkten errechnet voluntad debería z.B. con angleByLine ( [...]  ) .
 
22.02.2013  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

3.883 Views

Untitledvor 0 min.
Kutsche22.10.2024
ByteAttack09.08.2022
Member 145180318.11.2020
Michael W.23.12.2016
Más...

Themeninformationen

Dieses Thema ha 2 subscriber:

ByteAttack (5x)
iF (4x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie