Sticky in C#

eeee che non mi funziona. . .

ora o sbaglio io qualcosa, oppure come già successo c’é un bug per il Metodo in questione

essendo che abbiamo scritto tanto al riguardo, potresti postare la riga funzionante così che la provo?
(se hai modo di provare ovviamente)

Non ho Rhino 8 … e anche il 6 ce l’ho ancora per caso. :smile:

Non per fare il disco rotto … :wink:
Ma secondo me dire solo “non funziona” non serve a niente se non posti lo script completo.
Compreso il messaggio di errore ovviamente.

ok credevo che comunque qualche prova anche tramite VS la facessi :pray:
(ma quindi mi stai guidando a mente, senza verifiche pratiche. . .)

immagine

oppure anche come postato prima

con e senza new e ancora con altre 1000 combinazioni ma niente. . .

nel caso della foto errore è questo:

The type or namespace name 'Strings' does not exist in the namespace 'Rhino.DocObjects' (are you missing an assembly reference?)

invece in quest’altro caso

RhinoDoc.Strings sticky = Rhino.DocObjects.Strings.SetString("a", "b");

mi torna anche questo errore:

The type name 'Strings' does not exist in the type 'RhinoDoc'

mi evidenzia anche la parola Strings di RhinoDoc.Strings

ps Emilio non avevo capito che non potessi provare nulla di pratico,
se diventa troppo elaboriosa la cosa lasciamo stare non voglio sovraccaricarti.

Be’ … sono piuttosto allergico anche a VS … brutta roba eh. :roll_eyes: :smile:
Posso fare delle prove con Mono, e ogni tanto ne faccio, ma riguardo al solo C#, non a RhinoCommon.

Ma quello che avevo postato lo hai provato ?

Sei sicuro ?
Perche’ nella foto non vedo riferimenti a Rhino.DocObjects.Strings … :thinking:

Questo e’ chiaro.
Se scrivi “RhinoDoc.Strings sticky” stai cercando di definire una variabile di tipo RhinoDoc.Strings
Tipo che non esiste.

Inoltre …

Provare combinazioni a caso si fa se non riesci ad avere informazioni.
Mentre, almeno in teoria, io sto cercando di spiegare come funziona.
Appunto per poter procedere con una cercta logica:
tipo: devo fare questa operazione, allora cerco un metodo.
Vedo cosa serve per eseguire il metodo: oggetti, parametri …
Quindi cerco di procurare queste cose.
ecc. ecc. un passo alla volta.

Ma ho l’impressione che tu preferisca un modo di procedere diverso …
Forse e’ per questo che fatichiamo a capirci. :confused:
Mi sa che anche io faccio come il prof …

:grinning:

Le prove le faccio con Mono, per il C#, che conosco pochino …
RhinoCommon la conosco abbastanza, sono abituato a leggere la documentazione. :slight_smile:

Ti ringrazio, ma mi piace imparare qualcosa di piu’ sul C# dato che, come dicevo, sono parecchio fuori allenamento a riguardo … :wink:
Sono anche curioso di vedere come funzionano gli script C# per Rhino.
Tra l’altro, ne approfitto :blush:, sempre solo per curiosita’, sai se c’e’ un comando per eseguirli da pulsante, come RunPythonScript per Python ? :slight_smile:

ok va bene anche per me allora :+1:

riguardo al fatto di guardare la documentazione è quello che sto facendo anche negli ultimi tempi quando usavo Py, e a maggior ragione ancora di più adesso con il C# e RCommon (sopratutto quest’ultimo)

vviamente se vedo la guida, qualche esempio in rete e facnedo dei ragionamenti in base all’esperienza non riesco a venirne a capo a quel punto come dicesti anche tu una volta uso il metodo duro strong :muscle:

però ripeto, non vorrei che questo sia il secondo caso dove l’altra volta cercavo di eseguire un codice,
e poi alla fine invece, uscì fuori che per quella versione di Rhino c’era un bug che poi venne risolto…

a già ma con RCommon possiamo usarlo anche col Py
per caso hai già provato con la tua versione di Rhino se funziona?


edit ho visto anche alcune discussioni a riguardo nell’altro forum tipo questa:

non ho capito bene se hanno risolto e come.

Come avevo accennato, credo all’inizio della discussione, rhinoscriptsyntax usa proprio StringTable,
quindi funziona.
Almeno funzionava certamente prima di Rhino 8 … :smile:

Poi se tu posti un esempio corretto con tanto di messaggio di errore, allora si puo’ ragionare di bug.
Ma prima e’ decisamente prematuro. :wink:

… E io, per quanto capisco, un esempio corretto di uso di StringTable qui non lo ho ancora visto …
:wink:

EDIT:

Sembra semplicemente una confusione tra rhinoscriptsyntax e RhinoCommon.
Piu’ credo problemi relativi ai plug-in, che lascio volentieri a loro … :smile:

scusa Emilio, se tu puoi usare RCommon con Py
si apre una discussione Py per utilizzare i Metodi
che mi hai consigliato StringTable.SetString ecc

giusto per capire se funziona e la sintassi corretta
poi cercherò di convertirlo in C# ma so che funziona.

RhinoDoc.Strings - StringTable.SetString - StringTable.GetValue
si possono utilizzare in Py con RCommon giusto…

Si’, certo.
Se preferisci prima provare con Python, OK. :slight_smile:

EDIT:

Sulla sintassi corretta non credo ci siano molti dubbi.
Certo varia per quanto riguarda il linguaggio, da Python a C#.

ok provo RCommon in Py :+1:

1 Mi Piace

Buongiorno a tutti :hugs:

Leggo sempre con piacere i post in cui si parla di C# e dove trovo risposte del buon Emilio, sempre molto utili, ma… ma…
Salvio amico mio, tutti questi post non esisterebbero se leggessi i primi capitoli di un qualsiasi libro di C# o seguissi in tutorial udemy prima. Torneresti a fare domande ma con una maggior facilità nel carpire le risposte di Emilio.
Guarda anche io ho letto un libro di C# e facevo errori stupidi, ma quando Emilio mi dava indicazioni presto correggevo il tiro.
(@emilio grazie ancora per gli aiuti elargiti anche nel debug di certi errori da principiante).
È una questione di… pazienza. Molto spesso vogliamo bruciare le tappe, ma il risultato è monco.
Capisco che avere la persona a fianco è bello e comodo, ma non sempre c’è questa disponibilità e comunque serve un tempo di riflessione in totale solitudine prima di nuovi confronti, C# è un mondo, ma con un annetto di dedizione si viaggia presto.

Molti ingegneri sviluppano in C# perché non sono esperti programmatori ma in poco, una programmazione OOP C# ti consente di fare molto e bene.
Non voglio fare lo sperto perché non sono molto più avanti di te ma questa è stata la mia esperienza.

Ti consiglio di leggere qualcosa sulla memoria di tipo Stack e Heap riguardo ai riferimenti e alle istanze di oggetti, sui namespace, sui tipi valore e riferimento,… piano piano ti verrà altra fame.

Al solito, per chiarire, questo post non vuole inibire dal chiedere, ma al contrario darti una indicazione per raggiungere prima il tuo obiettivo: saper usare c# per modellare ciò che ti va.

1 Mi Piace

Detto questo, ad ogni modo, butta pure qui del codice e vediamo se anche io inizio ad essere utile.

1 Mi Piace

Figurati Luca !
Come ripeto spesso, quando rispondo sul forum e’ perche’ il problema mi interessa e trovo divertente provare a risolverlo. :slight_smile:

In generale, il debugging mi piace … salvo ovviamente i casi piu’ ostici, dove si rischia di arenarsi a lungo … :wink:

1 Mi Piace

Diciamo.che ti piace vincere facile… bonci bonci bon bon bon… :joy:

1 Mi Piace

Hehe … diciamo che mi disturba spegnere il PC senza aver prima trovato l’inghippo … :wink:
Ma a volte tocca rassegnarsi … :smile:

Quello che è non troppo ostico per Emilio è un casino per la maggior parte di noi. :crazy_face: