Come si calcola la lunghezza di una linea dalle coordinate?

 

Come si ottiene la lunghezza della linea a zig zag (lunghezza d'onda in sostanza) in qualsiasi unità, conoscendo le coordinate di due punti?

Necessità di confrontare le lunghezze d'onda dei due in percentuale


=== modifica===

Il rispettato sergeev a pagina 9 ha dato il codice, l'ho modificato per adattarlo al mio compito:

Nota importante: quando si riavvolge, si comprime/allunga i valori cambiano!

#import "user32.dll"
        int GetWindowDC(int dc);
        bool GetWindowRect(int h, int& pos[4]);
        int ReleaseDC(int h, int dc);

#import

// B1 и B2 - это номера баров
double GetLengthTrendLineInPixels(int B1, double P1, int B2, double P2)
{
    int hWnd = WindowHandle(Symbol(), Period());
    int hDC = GetWindowDC(hWnd); // получаем хендл окна
    int rect[4]; GetWindowRect(hWnd, rect); ReleaseDC(hWnd, hDC);   // берем его DC
    double wW = rect[2]-rect[0]; double wH = rect[3]-rect[1];           // получаем высоту и ширину в пикселях
    double H =(WindowPriceMax()-WindowPriceMin()); double W = WindowBarsPerChart(); // переводим на график
    double lengthW = wW / W * MathAbs(B1 - B2); // ширина в пикселях; wW / W = 1 бар в пикселях
    double lengthH = wH / H * MathAbs(P1 - P2); // высота в пикселях; wH / H = 1 пункт в пикселях
    return(MathSqrt(MathPow(lengthW, 2) + MathPow(lengthH, 2)));
}
 
AlexSTAL:

Come si ottiene la lunghezza della linea a zig zag (lunghezza d'onda in sostanza) in qualsiasi unità, conoscendo le coordinate di due punti?

Necessità di confrontare le lunghezze d'onda dei due in percentuale

non è una buona idea, si sommano i punti e il tempo, non è logico)
 
Beh, in termini puramente matematici: la radice quadrata della somma dei quadrati (teorema di Pitagora)
 
ma solo la lunghezza in punti se si sottrae quella più corta da quella più lunga non funziona?
 
sanyooooook:
Non è una buona idea, sommerai punti e tempi, quindi non puoi farlo (non è logico) )
E se invece del tempo - i numeri delle barre*TF? Per esempio 1: 1,5413+48*15, 2: 1,5466+1*15.
 
Abzasc:
E se invece del tempo - i numeri delle barre*TF? Per esempio 1: 1,5413+48*15, 2: 1,5466+1*15.
Non mi interessa cosa, se non è un prezzo, non ha senso)
 
sanyooooook:
qualunque cosa, se non il prezzo, non ha senso)

Se parliamo di un valore relativo, ha senso.

Il punto di Pitagora è calcolare la lunghezza del vettore in archi di Fibonacci.

Semplicemente, con il tempo si può dire che lo slancio si brucia, e se il movimento non si realizza in un certo tempo, si esaurisce.

Quindi, come misura d'impulso può andare bene, l'importante è che la discretezza del tempo sia uguale nei due impulsi che si confrontano.

Quindi sentitevi liberi di sommare il quadrato della differenza di prezzo (o meglio, di tradurlo in punti di distanza percorsa) e il quadrato della barra di movimento,

e la radice vi darà il valore relativo desiderato per il confronto.

 
sanyooooook:
comunque, se non è il prezzo, non ha senso)
Il punto è nel viaggio :)
 
Abzasc:
Il punto è il viaggio :)

La strada è per coloro che camminano, e il viaggio di mille miglia inizia con il primo passo.

Amico, diventerò presto un filosofo scettico con Math Math :o)

 

In realtà, mi riferivo alla lunghezza dell'ipotenusa :) cosa ne pensi? ;)

 
Di quale ipotenusa possiamo parlare se i "cateti" non sono solo fatti di pasta diversa, ma in spazi diversi? Più precisamente, sono semplicemente incommensurabili.