Avatar billede sabine Nybegynder
17. august 1999 - 12:14 Der er 24 kommentarer og
1 løsning

Tegning under delphi

Er der nogen der ved hvordan man opretter en ny pen som f.eks en linie men som har to paralle linier istedet
Avatar billede smilly Nybegynder
17. august 1999 - 12:54 #1
Så bliver du nødt til at tegne de 2 linier selv....

Ellers kan du tegne med pattern, dvs
du laver 6 forskellige bitmaps med 2
pixels på hver af dem, og så skal du
selv holde styr på hvad for en af dem
der skal bruges, ud fra hvilken retning der bliver tegnet.....

Smilly
Avatar billede sabine Nybegynder
17. august 1999 - 17:16 #2
kan du uddybe det lidt mere ? f.eks med et eksembel, eller et link hvor jeg finde lidt om det.
Jeg er begynder på det område

sabine
Avatar billede smilly Nybegynder
17. august 1999 - 18:16 #3
Hvis de må overlappe hinanden så er
det ikke noget problem, men hvis de
ikke må det så er det en størrer algoritme der skal til.....
Avatar billede sabine Nybegynder
17. august 1999 - 19:37 #4
Det ved jeg ikke. Men det jeg gerne vil lave er et tegneprogram, der kan tegne togspor

Sabine
Avatar billede cybermike Nybegynder
18. august 1999 - 15:20 #5
Prøv at kigge på Delphi´s egen "Image editor" med den kan du tegne din egen cursor, jeg kan ikke lige huske hvordan man implementere den i programmet, prøv at kigge i hjælpefilen!
Avatar billede smilly Nybegynder
18. august 1999 - 16:19 #6
Cursor, dette har intet med en cursor at gøre, men problemet er meget større end som så. Hvis du (sabine) ikke er særlig god til programmering, så har du et problem, for i en togbane, må linierne ikke krydse hinanden, dvs. At hvis en bruger tegner en streg, så ser det ser fint ud, men problemet opstå når brugeren derefter vil tegne en linie fra slut puntet til et nyt punkt, for så kan det ske at du skal fjerne noget fra den forrige linie fordi det er parallelt, for at det skal ser godt ud....
Og den eneste måde du kan dette på, er at have en tabel over alle linierne, og gentegne bitmappet hver gang.....

Det er noget af en opgave du har givet dig ud på.....

Hvis der skal være mellemligende linier imellem de 2 linier, så kan du snyde ved at tegne 2 linier oven på hinanden, hvor du laver pen størrelsen stor på den ene linie, og lille på den anden, så vil du få en skæring på alle samle punkterne.....

Jeg håber du forstår lidt af hvad jeg snakker om.....
Avatar billede sabine Nybegynder
18. august 1999 - 18:36 #7
Jo jeg ved godt at det er lidt af opgave
jeg har påtaget mig
og nej jeg er den beste programør

der skal være linier i mellem de to paralelle linier, så det ser ud som et rigtig spor. og det gør ikke noget at man kan tegne henover et andet spor da programmet er til folk i modelbane klubber

jeg forstår det meste af det, men ikke det sidste.
Hvad mener du med 2 linier oven på hinanden ?

hjæper det lidt
sabine
Avatar billede smilly Nybegynder
18. august 1999 - 20:57 #8
Jeg mener, du kan jo sætte en canvas pen størrelse til f.eks. 10, og tegne en linie, og derefter sætte pen størrelsen til 5 og ændre farven på pen.color, og tegne nødagtig oven på den anden linie....Dette er en snavset løsning, og hvis jeg skulle lave det ville jeg som sagt have en tabel med samtlige linier i og så tegne det hele op på ny, hver gang der blev tegnet en ny linie.....
Avatar billede lrj Nybegynder
02. september 1999 - 14:11 #9
Hvad med at tegne sporene som en ren, almindelig linje. Og når så det er overstået, tegnes op som togspor - evt. med flere streger oven i hinanden. Således er det kun den underlæggende tynde streg du skal holde styr på - resten er bare en flot måde at vise den på.
Avatar billede sabine Nybegynder
12. marts 2000 - 16:28 #10
jeg er overhovet ikke med på hvad i snakker om

det jeg søger efter nu, er en source kode der kan det her
Avatar billede abpdk Nybegynder
26. august 2000 - 23:28 #11
Hvis du med to paralelle linjer mener noget der ligner er lighedstegn, kan det f.eks. gøres således.

image1.canvas.moveto(x-5,y-2);
image1.canvas.lineto(x+5,y-2);
image1.canvas.moveto(x-5,y+2);
image1.canvas.moveto(x+5,y+2);

Koden skal indsættes i OnMouseMove proceduren hos komponenten (her en TImage komponent).

Du kan bruge enhver komponent med et canvas.
Avatar billede lrj Nybegynder
27. august 2000 - 00:32 #12
\"Men det jeg gerne vil lave er et tegneprogram, der kan tegne togspor\" - så er et lighedstegn ikke helt nok :)
Avatar billede sabine Nybegynder
15. oktober 2000 - 15:16 #13
Se det jeg gerne vil have lavet er et program hvor man kan tegne sin togbane ind og sætte sine
sporskift på ovs. og have mulligheden få at trykke på et sporskift og få en eller anden event.

Om det er en linie eller om det er to paralelle linier er lige meget nu. Jeg skal bare kunne tegene banen ind og kunne gemme det og hente det igen

Avatar billede abpdk Nybegynder
16. oktober 2000 - 19:01 #14
Jeg kan på sabine\'s seneste kommentar godt se at et lighedstegn slet ikke er nok, da det Sabine søger lader til at være et komplet program til at designe f.eks. en modeljernbane og det er en del mere arbejde end det oprindelige spørgsmål lægger op til.

Er det meningen at sporene skal være af forudbestemt længde, bredde osv., eller skal man kunne tegne en fuldstændig tilfældig jernbane?
Hvis du forstår...

Hvis sidstnævnte er tilfælde så kan jeg ikke sige andet end, ja, du HAR påtaget dig noget af en opgave.

Hvis førstnævnte derimod er tilfælde er problemet en smule mindre, men alligvel... Jeg har nogle ideer til hvordan du kan tegne de forskellige typer spor, men hvis du bagefter ønsker at kunne klikke på dem for at kunne flytte dem eller skifte spor, er du nødt til at lagre alt information om banen for at kunne gå tilbage og gribe fat i en bestemt del bagefter. Til gengæld er det derefter ikke så svært at lagre alt den information i en fil...



Avatar billede timit Nybegynder
04. marts 2001 - 18:35 #15
Hej sabine det lyder spændne må jeg være med ?
Avatar billede sabine Nybegynder
09. marts 2001 - 16:10 #16
hej abpdk
ja det er meningen at sporene, skal være  forudbestemt i længde, bredde og vinkel
så jeg vil meget gerne høre mere til dine ideer


Avatar billede webb Nybegynder
12. marts 2001 - 16:54 #17
Hej Sabine,

Du kunne f.eks enten bruge et virtuelt grid (og evt. tegne det) så når du bevæger din muse-cursor og er det indenfor et kvadrat i grid\'et kan du putte
et bitmap på x,y positionen af kvadratet. Med højre muse-knap kunne du så
vælge imellem forskellige bitmaps (en vandret togskinne, eller skrå o.s.v)

Det eneste der skal gemmes, hvis der skal det, er gridposition og bitmap nr.

Du kan bruge et Image og en Imagelist f.eks til selve det grafiske.

Ulempen er at man skal klikke sig frem til hele togbanen istedet for at
frihånds tegne hvor programmet tvinger linierne til at ligge i rækkefølge.

-webb


Avatar billede sabine Nybegynder
12. marts 2001 - 17:54 #18
Hej Webb

ja det er en god ide, men det skal helst være frihånds tegne

Sabine
Avatar billede webb Nybegynder
13. marts 2001 - 10:48 #19
Skulle Jeg heller skrive Hej Thomas :)

Måske er det muligt at gøre det glidende, idet at så længe man holder
venstre muse-knap trykket ned og trækker cursoren hen over tegnefeltet
vil der tegnes en spor i hver kvadrat i dit grid. Men så skal der holdes
øje med hvilken retning cursoren er i, og om der trækkes op, ned eller til siderne. (Lige som i simcity eller lign.)

Ex. man er ved at tegne et vandret spor også trækkes musen opad, så skal programmet ændre sidste kvadrat til et buet eller skråt spor. Man kunne evt. også derefter klikke sig frem for at rette evt. fejl

Jeg tænker mig til at selve det grafiske er nemt at lave, men intelligensen som
holder øje med hvad man laver er mere komplex !

Hvad går programmet ud på ? Og hvad har du lavet indtil videre ?

-Webb






Avatar billede webb Nybegynder
13. marts 2001 - 11:56 #20
Jeg leger lidt med noget kode som kan tegne vandrette togskinner
Noget fuskekode, men det virker...

Jeg vender tilbage med et resultat

-webb
Avatar billede webb Nybegynder
13. marts 2001 - 15:55 #21
Til dem der vil se hvad jeg har lavet Stik mig en E-mail !
(Lavet i Deplhi 4, men koden burde virke i andre vers.)

/webb
Avatar billede webb Nybegynder
13. marts 2001 - 16:08 #22
Heh sad lige og tænkte over sagen efter at have læst hele
dialogen igennem igen. Mit lille prog er uhyre simpelt, det kan
tegne togskinner vandret og lodret, men holder ikke styr på evt. fejl.

Og det er ret komplex og tidskrævende at kode sig frem til det ønskede !!

Jeg ville stadig holde standpunkt ved at klikke sig frem til hver togskinne
og vælge type med højre muse-knap, istedet for frihåndstegning.

Jeg har selv været medlem af en model jernbane klub, og der laver man ikke
en bane på 2 sec, det tager lang tid for en togskinne, og hvis der skal designes
i et program, ser jeg ikke klikke-metoden for dårlig...

/Webb

PS: Consider me still as on !
Avatar billede sabine Nybegynder
14. marts 2001 - 18:29 #23
Hej Webb.
ja Thomas er mit navn. Men eksperten ville ikke tage som brugernavn så jeg bruger min datteres navn

Jeg vil gerne se det du har lave, du kan sende til
T.Hjortby@Privat.dk
Med hendsyn til hvad jeg har fået lavet nu på programmet, så kan jeg kun svare ingenting da jeg bliver ved med at hænge fast i den grafiske del
Avatar billede sabine Nybegynder
29. marts 2001 - 17:19 #24
Hej Seffen
Kunne du ikke skrive et svar, så du kan få dine velfortjente points

Mvh
Thomas
Avatar billede webb Nybegynder
30. marts 2001 - 11:00 #25
Til dem som har fulgt med, så har jeg skrevet noget kode for Thomas som
virker tilfredstillende m.m. Til dem der vil se koden, mail mig venligst
webb@chicks.dk

/Webb
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester