SimpaticaDef

2 Mi Piace

sarebbe piĂą realistico se si riuscisse a far ruotare la sfera in modo realistico
esiste un componente preposto, oppure si ha bisogno di uno script?

Basta aggiungere la rotazione all’interno della Def.

1 Mi Piace

ciao Sergio,
ma poi non gira solo in un unico senso?

A seconda della direzione del movimento, anche la rotazione cambia.

si forse su questo ci sono riuscito, l’ho collegato alla direzione dello Slider Multidimensional, solo che questa era la parte facile, per dare la visione che gira, credo che deve avere uno script con incremento continuo. . . .

Come facciamo a risponderti? Immaginiamo il codice?

2 Mi Piace

non so come funziona Kangaroo sto cercando e facendo alcuni tentativi
per il codice di incremento non dovrebbe essere complicato ce la dovrei fare usando Py
non sapendo se sia la strada giusta essendo che gli esempi visti erano su altre situazioni
cerco di prendere altre info e se mi trovo in difficoltà posterò il problema, codice o quel che sia

volevo riportare il codice in Py ma non credo sia possibile, questo è il codice in C# preso in prestito:

  private void RunScript(bool reset, bool On, double x, ref object A)
  {

    if(reset)i = 0;
    else
      if(On)
    {
      i += x;
      Component.ExpireSolution(true);
    }
    A = i;
  }

  // <Custom additional code> 
  double i;
  // </Custom additional code> 
}

anche se devo collegare la rotazione alla fine e non all’interno del Solver di Kangaroo, però sembra funzioni

Questa piccola definizione simula il rotolamento di una sfera.
In pratica calcola la trasformazione di rotazione+traslazione conseguente a ogni nuova coordinata del punto fornito… raggio della sfera pre-determinato.
Dal punto vecchio al punto nuovo si traccia un vettore, facile… la traslazione.
La lunghezza della traslazione diviso il raggio, ecco i radianti della rotazione.
Il cross product tra l’asse Z e il vettore di traslazione è il vettore di rotazione.

Le trasformazioni vengono iterativamente “accumulate” e incrementate su una variabile permanente dentro lo script c#.

Per resettare prima re-internalizzare il punto e poi premere reset.

2021-09-14 00_10_57-Window

roll

roll.gh (10,5 KB)

4 Mi Piace

wauuu Riccardo questa è bella, un’interazione visiva/spostamento tra Gh e Rh

anche il multicolore mi piace molto, l’ho aggiunta alla definizine funziona grazie :+1: