Nikolai Semko #: In realtà utilizzo più tele (di solito non più di 4).
Esiste sempre una media aurea. Un estremo è dipingere tutta la statica e tutta la dinamica su un'unica tela, l'altro estremo è dipingere tutti gli oggetti su tele separate.
È importante non dimenticare che se si hanno due tele con trasparenza sovrapposte, la CPU, (forse in Win10-11 la GPU, ma credo sempre la CPU), mescolerà ogni pixel di uno sfondo omogeneo (trasparenza non zero).
Qui possiamo prendere in prestito da JS la pratica di memorizzare nella cache il canvas o una parte di esso per migliorare le prestazioni.
Per quanto riguarda i cerchi antialias, ho già pubblicato una variante di tale cerchio, che è ideale (in termini di prestazioni) per cerchi con raggio inferiore a ~5 pixel. Credo che la funzione si chiami iDot() e si trovi nel codice di 3DStars. È molto primitiva e breve (circa 10 righe di codice). Per i cerchi di raggio maggiore, è tutt'altro che ottimale in termini di prestazioni. Per raggi maggiori, la funzione ad alte prestazioni è già più di 100 righe di codice.
Sì, dopo aver stabilito per anni nuove connessioni neurali nel cervello su tela, ora posso creare una libreria su tela a qualsiasi livello. Ci sarebbero tempo e motivazione.
L'algoritmo di Wu è considerato obsoleto.
Non sono riuscito a trovare una ricerca per iDot() o 3DStars per vedere il codice.
Intendevo prendere in considerazione tutto ciò che si trova sotto la tela, compreso il grafico stesso (colore dello sfondo) e il colore dei suoi elementi (barre, linee ask/bid, ecc.).
Quando si sposta questa tela con uno sfondo trasparente con elementi semitrasparenti disegnati su di essa, tutti i pixel dovrebbero essere disegnati correttamente.
Artem, non si tratta di compiti banali che richiedono nuove connessioni neurali. Ad esempio, in SVG esiste il concetto di viewBox. Ho già visto molti video su come funziona, ho letto molta documentazione, ho scritto molto codice, eppure a volte rimango ancora perplesso. Non ho ancora le connessioni neurali necessarie, anche se più volte mi è sembrato di aver capito tutto.
Intendevo prendere in considerazione tutto ciò che si trova sotto la tela, compreso il grafico stesso (colore di sfondo) e il colore dei suoi elementi (barre, linee ask/bid, ecc.).
Quando si sposta questa tela con uno sfondo trasparente con elementi semitrasparenti disegnati su di essa, tutti i pixel dovrebbero essere disegnati correttamente.
Ora non è così:
Ecco un esempio in cui una tela (con un cerchio blu) si trova sopra un'altra tela (un rettangolo blu con un'immagine) e anche in questo caso non tiene conto di ciò che è disegnato sulla tela sottostante:
Non è stato possibile trovare una ricerca per iDot() o 3DStars per visualizzare il codice.
Intendevo prendere in considerazione tutto ciò che si trova sotto la tela, compreso il grafico stesso (colore di sfondo) e il colore dei suoi elementi (barre, linee ask/bid, ecc.).
Mentre si sposta questa tela con uno sfondo trasparente con elementi semitrasparenti disegnati su di essa, tutti i pixel dovrebbero essere disegnati correttamente.
Nicholas, puoi fare un elenco di cosa e come è auspicabile cambiare in CCanvas standard? Secondo la tua opinione. Come è ora e come dovrebbe essere. E perché.
Abbiamo bisogno di una nuova classe con meno funzioni rispetto a CCanvas. È meglio rendere questa classe il più simile possibile a JS canvas, che non ha molte funzioni in sostanza, per facilitare l'apprendimento e l'adozione, dato che l'intera informatica si sta spostando verso il web. ma questo è l'ideale. Probabilmente potrei scrivere qualcosa di simile da solo, ma ci vorrebbe almeno mezzo anno a tempo pieno anche se personalmente non mi piace tutto ciò che c'è in JS Canvas, ma per la standardizzazione sarebbe giusto implementare qualcosa di simile con piccole modifiche per fare a meno del parsing delle stringhe.
ZY ma per il lavoro normale ho bisogno di rifare il modello di eventi di MT5, perché è semplicemente orribile.
Il canvas in MT5 dovrebbe funzionare due volte più velocemente del canvas JS. Ma per questo (per un'interfaccia non laggante) è necessario cambiare molte cose all'interno di MT5, cosa che Renat non farà mai.
W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.
Abbiamo bisogno di una nuova classe con meno funzioni di CCanvas. È meglio rendere questa classe il più simile possibile a JS canvas, che non ha molte funzioni in sostanza, per facilitare l'apprendimento e l'adozione, dato che l'intera informatica si sta spostando verso il web. ma questo è l'ideale. Probabilmente potrei scrivere qualcosa di simile da solo, ma ci vorrebbe almeno mezzo anno a tempo pieno anche se personalmente non mi piace tutto ciò che c'è in JS Canvas, ma per la standardizzazione sarebbe giusto implementare qualcosa di simile con piccole modifiche per fare a meno del parsing delle stringhe.
Ma per il lavoro normale abbiamo bisogno di rifare il modello di eventi di MT5, perché è semplicemente orribile.
È chiaro che tutto è "sotto i ferri", ma la domanda era comunque un po' diversa. Cosa è auspicabile cambiare/raffinare nella classe esistente...
Consenti l'uso dei cookie per accedere al sito MQL5.com.
Abilita le impostazioni necessarie nel browser, altrimenti non sarà possibile accedere.
Hai effettuato l'accesso. L'autenticazione a due fattori è stata disattivata. Configurala di nuovo e scansiona un nuovo codice QR, oppure continua con l'autenticazione a due fattori disattivata.
In realtà utilizzo più tele (di solito non più di 4).
Non sono riuscito a trovare una ricerca per iDot() o 3DStars per vedere il codice.
Intendevo prendere in considerazione tutto ciò che si trova sotto la tela, compreso il grafico stesso (colore dello sfondo) e il colore dei suoi elementi (barre, linee ask/bid, ecc.).
Quando si sposta questa tela con uno sfondo trasparente con elementi semitrasparenti disegnati su di essa, tutti i pixel dovrebbero essere disegnati correttamente.
Ora non è così:
Artem, non si tratta di compiti banali che richiedono nuove connessioni neurali. Ad esempio, in SVG esiste il concetto di viewBox. Ho già visto molti video su come funziona, ho letto molta documentazione, ho scritto molto codice, eppure a volte rimango ancora perplesso. Non ho ancora le connessioni neurali necessarie, anche se più volte mi è sembrato di aver capito tutto.
Forum sul trading, sui sistemi di trading automatizzati e sulla verifica delle strategie di trading
Discussione dell'articolo "Visualise it! Una libreria grafica in MQL5 come analogo di R".
Anatoli Kazharski, 2023.07.31 17:39
...
Intendevo prendere in considerazione tutto ciò che si trova sotto la tela, compreso il grafico stesso (colore di sfondo) e il colore dei suoi elementi (barre, linee ask/bid, ecc.).
Quando si sposta questa tela con uno sfondo trasparente con elementi semitrasparenti disegnati su di essa, tutti i pixel dovrebbero essere disegnati correttamente.
Ora non è così:
Ecco un esempio in cui una tela (con un cerchio blu) si trova sopra un'altra tela (un rettangolo blu con un'immagine) e anche in questo caso non tiene conto di ciò che è disegnato sulla tela sottostante:
Non è stato possibile trovare una ricerca per iDot() o 3DStars per visualizzare il codice.
Intendevo prendere in considerazione tutto ciò che si trova sotto la tela, compreso il grafico stesso (colore di sfondo) e il colore dei suoi elementi (barre, linee ask/bid, ecc.).
Mentre si sposta questa tela con uno sfondo trasparente con elementi semitrasparenti disegnati su di essa, tutti i pixel dovrebbero essere disegnati correttamente.
Ora non è così:
h ttps://www.mql5.com/ru/forum/227736/page72#comment_25130501
Grazie! Sono esempi molto belli! Quindi mi sbagliavo.
Non ho ancora guardato il codice in dettaglio, ma perché la trasparenza non viene disegnata come previsto nel CCanvas predefinito?
Grazie! Sono esempi molto belli! Quindi mi sbagliavo.
Non ho ancora esaminato il codice in dettaglio, ma perché la trasparenza non viene disegnata come previsto nel CCanvas predefinito?
Ci sono molte cose che non vanno.
Nikolay, puoi fare un elenco di cosa e come è auspicabile cambiare in CCanvas standard? Secondo te. Come è ora e come dovrebbe essere. E perché.
Nicholas, puoi fare un elenco di cosa e come è auspicabile cambiare in CCanvas standard? Secondo la tua opinione. Come è ora e come dovrebbe essere. E perché.
Abbiamo bisogno di una nuova classe con meno funzioni rispetto a CCanvas. È meglio rendere questa classe il più simile possibile a JS canvas, che non ha molte funzioni in sostanza, per facilitare l'apprendimento e l'adozione, dato che l'intera informatica si sta spostando verso il web.
ma questo è l'ideale.
Probabilmente potrei scrivere qualcosa di simile da solo, ma ci vorrebbe almeno mezzo anno a tempo pieno
anche se personalmente non mi piace tutto ciò che c'è in JS Canvas, ma per la standardizzazione sarebbe giusto implementare qualcosa di simile con piccole modifiche per fare a meno del parsing delle stringhe.
ZY ma per il lavoro normale ho bisogno di rifare il modello di eventi di MT5, perché è semplicemente orribile.
Il canvas in MT5 dovrebbe funzionare due volte più velocemente del canvas JS. Ma per questo (per un'interfaccia non laggante) è necessario cambiare molte cose all'interno di MT5, cosa che Renat non farà mai.
Abbiamo bisogno di una nuova classe con meno funzioni di CCanvas. È meglio rendere questa classe il più simile possibile a JS canvas, che non ha molte funzioni in sostanza, per facilitare l'apprendimento e l'adozione, dato che l'intera informatica si sta spostando verso il web.
ma questo è l'ideale.
Probabilmente potrei scrivere qualcosa di simile da solo, ma ci vorrebbe almeno mezzo anno a tempo pieno
anche se personalmente non mi piace tutto ciò che c'è in JS Canvas, ma per la standardizzazione sarebbe giusto implementare qualcosa di simile con piccole modifiche per fare a meno del parsing delle stringhe.
Ma per il lavoro normale abbiamo bisogno di rifare il modello di eventi di MT5, perché è semplicemente orribile.
È chiaro che tutto è "sotto i ferri", ma la domanda era comunque un po' diversa. Cosa è auspicabile cambiare/raffinare nella classe esistente...
È chiaro che tutto è "sotto i ferri", ma la domanda era comunque un po' diversa. Cosa è auspicabile cambiare/migliorare nella classe esistente...
metodi lisci per dar loro vita. Ora penso che ci siano anche funzioni in CCanvas che non sono documentate.