Linea vicino col punto

buonasera,
Annotazione 2020-05-05 232552
in Gh (senza galapagos) esiste un componente che in automatico ed impostando la lunghezza
di una retta fa in modo che il punto finale termina su una retta di destinazione come foto?

grazie.

Così?

pointOnCurve.gh (12,7 KB)

Funziona comunque sia orientata la retta nello spazio.

ciao Luca e grazie per il file,
ho fatto alcune prove anche in situazioni semplici, ma più volte la definizione non funzionava.

essendo che mi servirebbe soltando orientato sempre sullo stesso piano escluderei fare cose complesse dove è più facile riscontrare errori, quindi inizialmente stavo optando per un cerchio
con raggio della misura desiderata che si intersecava con la retta sottostante anche se mi
sembrava veramente spartana come soluzione oltre al fatto che spesso si interseca su due punti
(cosa però che posso sorvolare)

adesso invece stavo provando questo componente mi sembra che funzioni abbastanza bene fa quello che serve, poi volendo si potrebbe migliorare obbligandolo ad andare solo verso una direzione
(ma comunque sono dettagli) faccio altre prove sperando che non ci siano sorprese. . . .

Annotazione 2020-05-06 121455

ps (forse mi sarò fissato con le matrici) ma l’ideale sarebbe calcolare con i sen e cos il coefficiente angolare (dovrebbe essere questo) che esiste tra le due rette. conoscendo la retta base, il punto di inizio della retta variabile e la lunghezza di quest’ultima. angolo dovrebbe cambiare in base alla lunghezza della seconda retta ma il calcolo per trovarlo dovrebbe essere sempre quello. giusto?

in quali casi? Considera che ho messo lo slider solo per valori positivi e nell’extend metti l’estensione ambo i lati. Così ha validità generale.

già provato anche aumentando il range in entrambi i lati. il punto era (10,30,0)

io uso la v5, tu quale versione usi?

la soluzione di prima postata mi poteva andare già bene
con questa inizio ad impostare alcuni parametri da rispettare

il punto di parteza è quello rosso più in alto

mentre la retta è tracciata dai 2 punti rossi sotto

mi trovo il punto più vicino tra il punto e la retta
inizio del vettore che termina al punto finale della retta
(punto verde dove inizia il vettore punta freccia dove termina)

ovviamente come succede sempre (anche in python) ho tracciato la direzione (punto verde vicino 0)
ma mi manca poter far iniziare dal punto iniziale del vettore (punto verde inizio freccia)

La 6. Ma non ho capito in quali casi non funziona.

la tua definizione porta una retta già impostata

ho messo il punto di partenza alle coordinate (10,30,0)

prova se a te da problemi, a me non funziona

Una soluzione di carattere generale non la vedo come complicazione. Che sia sul piano lo sai tu, non il software, che vede un punto ed una linea e lavora in R3.

Cambiala no? A me funziona.

Scusate, penso che, almeno in Rhino, farei una intersezione con una circonferenza o con una sfera.
Forse non ho capito il problema ?

penso ke questa vada bene

infatti già avevo ipotizzata come prima opzione

la voglio solo implementare con uno slider parametrico 0>1 tra distanza inizio e fine vettore

Infatti, forse siamo in due a non aver capito che deve fare il nostro amico.
Tu che pensavi di fare Emilio? Perché oltre al centro e al raggio della sfera hai una retta che ti é data e non puoi toccarla, per quel che avevo capito.
Dici tu di prendere il punto di intersezione, ammesso che ci sia, tra sfera e retta? Beh direi di sì.

E la sfera dov’è? :thinking:
Ma si possono vedere i nomi dei componenti che così evito di indovinare?

mi sa che leggi troppo in fretta e salti vari passaggi importanti
avevi capito il funzionamento che serviva con la tua definizione
te lo detto a me non funziona bene. ma l’esecuzione era quella

la sfera come dici tu (cerchio che intendevo io essendo che mi serviva solo su un piano)
come ho già detto dall’inizio è stato la prima soluzione “pensata” che però ho escluso a priori

sto verificando che con la mia definizione funzioni in tutti i casi riscontrabili
la tua (non so a te) ma in vari casi a me non funzionava bene. puoi verificare.

dipende da quello che vuoi ottenere (io prediligo il massimo risultato col minor sforzo)
perchè come dici allora andava bene anche la prima soluzione che ho postato che era la più semplice possibile. ps non mi piace utilizzare 20 componenti se ne posso utilizzare pochi o addirittura uno.

ma per carità, non dico che la mia sia la soluzione migliore. Parlo di quello di Emilio, che, non ho provato, ma immagino …figurandomi la situazione, sia quella migliore. Senza offesa eh… 0904… Più semplice di fare una sfera di raggio L e centro nel punto che hai e intersecarla con la retta… non riesco ad immaginare nulla. Che poi se quello che hai è valevole sia in R3 che in R2, hai un di più (che non è un di più di componenti).

Giusto… pensavo. :wink:
Non intendevo costruire una definizione, ero solo curioso. :slight_smile:

Come ho gia’ avuto modo di accennare, di solito non capisco bene cosa intende Salvio … ma ho imparato a non preoccuparmene. :smile:

@0904

Ah, OK, non avevo letto.
Giusto, ottieni due punti. Bisogna scegliere il punto giusto … che sai tu quale sia. :wink: