bcb canvas (auf den farbwert einer linie zugreifen)
-
wie kann man eine linie nachdem sie gezeichnet wurde
wieder ansprechen und die farbe rausziehen ?gibt es da eine andere möglichkeit als zu wissen wo die linie vorbeikommt
und den entsprechenden pixel zu nehmen ?bitte sagen wenn ich ich zu unpräzise ausgedrückt habe.
die information daß es nicht möglich ist hilft auch
wenn es denn so ist.
-
Sehe ich das richtig, dass sich die Frage auf den Borland C++ Builder bezieht?
Warum hast du dann nicht da gepostet?
-
Ich antworte trotzdem mal:
Erstaml, ja die Frage ist undeutlich!Du musst doch eh die Gerade in deiner Paint-Methode immer wieder neu zeichnen.
Dann zeichnest du sie halt irgendwann anders und erklärst das Canvas für
ungültig (Methode wird Invalidate oder ähnlich heissen).Jockel
-
ich bin neu,
hab die themenbereiche überflogen
und keinen bcb (borland c++ builder) unterbereiche gefunden.wie verschieb ich mein posting dahin ?
danke daß du trotzdem antwortest.void __fastcall TForm1::FormPaint(TObject *Sender)
{
Canvas->Pen->Color = 0x000000FF;
Canvas->MoveTo(Panel1->Left + (Panel1->Width/2),Panel1->Top + (Panel1->Height/2));
Canvas->LineTo(Panel65->Left + (Panel65->Width/2),Panel65->Top + (Panel65->Height/2));
}die color eigenschaft der linie wollte ich wieder auslesen,
damit ich da nicht noch eine extra variable mit dem farbwert erstellen muß.ich habe nähmlich vor einen ganzen haufen linien zu zeichnen.
auf die weise will ich am ende übungsweise ein neuronales netzwerk modellieren.
-
fuse schrieb:
hab die themenbereiche überflogen
und keinen bcb (borland c++ builder) unterbereiche gefunden.Wie wäre es denn mit "Frameworks / VCL/CLX (Borland C++ Builder)" ich glaube persönlich das der Text in Klammern recht aussagekräftig ist

cu André
-
schön gut aber wie kommt der text nun dahin
(ich hab das als unterbereich von c++ vermutet) ?
da wird den ein moderator/admin verschieben müssen.danke schonmal für die rege komunikatonsteilnahme

-
fuse schrieb:
und keinen bcb (borland c++ builder) unterbereiche gefunden.
Wie schon gesagt ist deutlich in der Hauptliste oben zu erkennen.
wie verschieb ich mein posting dahin ?
Indem du wartest bis dich ein Moderator von hier dahin verschiebt... und dann in "meinem" Forum bist

die color eigenschaft der linie wollte ich wieder auslesen,
Nadem du die Linie gezeichnest hast gibt es diese als einzelnes Objekt nicht mehr. Du könntest über die Eigenschaft TCanvas::Pixels auf eine der Stelle zugreifen die von der Linie belegt werden, aber das halte ich für schlecht.
damit ich da nicht noch eine extra variable mit dem farbwert erstellen muß.
Das ist meiner Meinung nach die sauberer und effizientere Lösung. Da ein Farbwert nur 4 byte belegt ist das auch Speichertechnisch kein Problem.
bis bald
akari
-
damit währe meine frage vorerst beantwortet.
vielen dank
-
das wird nun ein ziemlicher spagetticode.
void __fastcall TForm1::FormPaint(TObject *Sender)
{
Canvas->Pen->Color = panel_1_to_65_;
Canvas->MoveTo(Panel1->Left + (Panel1->Width/2),Panel1->Top + (Panel1->Height/2));
Canvas->LineTo(Panel65->Left + (Panel65->Width/2),Panel65->Top + (Panel65->Height/2));bis zu
Canvas->Pen->Color = panel_1_to_109_;
Canvas->MoveTo(Panel1->Left + (Panel1->Width/2),Panel1->Top + (Panel1->Height/2));
Canvas->LineTo(Panel109->Left + (Panel109->Width/2),Panel109->Top + (Panel109->Height/2));und dann das ganze nochmal mit pannel 2 bis pannel 64.
und das alles nochmal für jede schicht.
geht das nicht irgendwie eleganter ?
kann man nen variablennamenteil mit anderen variablen angeben
die man inkrementiert (+1) z.b. mit (++[variablennahme];)
(in alten, simplen batch scripts ging das).
gibt es wenn nicht wenigstens ein tool das die zahlen
in aufsteigender reihenfolge einträgt ?was macht man bei dieser warnung in dem zusammenhang ?:
[C++ Warnung] TTest.cpp(20): W8018 int wird TColor zugewiesenim ersten codeauszug im thread kann man die zuweisung sehen (0x00000000).
hmm hab bei google was gefunden:
http://forum.codenet.ru/archive/index.php/t-16448.html
da setzt einfach (TColor) davor
hmm bin gespannt obs nch ne lösung für das nudelgericht gibt

-
zum code wie ein spagetti hier weiter:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-190456-and-start-is-0-and-postdays-is-0-and-postorder-is-asc-and-highlight-is-.html
-
Dieser Thread wurde von Moderator/in CStoll aus dem Forum C++ in das Forum VCL/CLX (Borland C++ Builder) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.