amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Programmierung > region rectangle [ - Suche - Neue Beiträge - Registrieren - Login - ]

-1- [ - Beitrag schreiben - ]

15.07.2009, 17:31 Uhr

AGSzabo
Posts: 1663
Nutzer
(problem gelöst, s.u.)

bevor ich nen crash verursache sie hier kurz gefragt:

ich will die zeichnugn auf einen rechteckingen bereich beschränken, so dass alles was außerhalb liegt weggeclipt wird.

aus gfx/regions.i
code:
STRUCTURE	Region,0
      STRUCT   rg_bounds,ra_SIZEOF
      APTR  rg_RegionRectangle
   LABEL    rg_SIZEOF

   STRUCTURE   RegionRectangle,0
      APTR  rr_Next
      APTR  rr_Prev
      STRUCT   rr_bounds,ra_SIZEOF
   LABEL    rr_SIZEOF


kann ich bei einem 1-clip region den zeiger auf RegionRectangle freilassen? oder muss ich die ausmasse meines clips in rg_bounds UND in rr_bounds eintragen? oder nur in rr_bounds oder nur in rg_bounds?

ehm und wo finde ich die datei layers_lib.i ???

ps: ich habs jetzt so gemacht dass die bounds in rg_bounds und in rr_bounds drin stehn, es geht aber nicht, also es wird garnix mehr gezeichnet solange der clip installiert ist:

code:
move.l	(a7),d0    ; x,y
		move.l	d0,xuiL_Region+rg_bounds+ra_MinX(a3)
		move.l	d0,xuiL_RegionRectangle+rr_bounds+ra_MinX(a3)

		move.l	4(a7),d0   ; x2,y2
		move.l	d0,xuiL_Region+rg_bounds+ra_MaxX(a3)
		move.l	d0,xuiL_RegionRectangle+rr_bounds+ra_MaxX(a3)

		move.l	layersbase(pc),a6
		lea	xuiL_Region(a3),a1
		move.l	rp_Layer(a2),a0
		jsr	-174(a6)	; _LVOInstallClipRegion
		move.l	d0,xuiL_oldregion(a3)


rg_RegionRectangle zeigt schon auf RegionRectangle


(lösung:)

rr_bounds muss relativ zu rg_bounds sein!

--
e-uae 39bb2 - A4000d 39bb2 - Cyberst.MK3 060 50mhz 128mb - Cybervis. - Ariadne_II - ide DVD und 320gb HD (nur 128gb) - HD Floppy -- A500 3.1 adide 50mb -- Duron 1600mhz Ubuntu Linux / WinXP -- BenQ FP93G TFT - 1048 like CRT - HP psc1110

[ Dieser Beitrag wurde von AGSzabo am 15.07.2009 um 20:00 Uhr geändert. ]

[ - Antworten - Zitieren - Direktlink - ]

15.07.2009, 21:49 Uhr

thomas
Posts: 7718
Nutzer
Zitat:
Original von AGSzabo:
(problem gelöst, s.u.)


Von wegen !

Du hast an der struct Region nicht selber rumzufummeln !

Du legst eine neue Region mit NewRegion an und kannst dann mit OrRectRegion / AndRectRegion / XorRectRegion einen Clip-Bereich erstellen, der auch deutlich komplexer werden kann als ein einfaches Rechteck.

Mit InstallClipRegion wird die Region dann an den RastPort geheftet. Den Rückgabewert gibst du am Ende nochmal an InstallClipRegion, um die alte Region wiederherzustellen. Deine Region kannst du dann mit DisposeRegion wieder freigeben.

Gruß Thomas

--
Email: thomas-rapp@web.de
Home: thomas-rapp.homepage.t-online.de/

[ - Antworten - Zitieren - Direktlink - ]


-1- [ - Beitrag schreiben - ]


amiga-news.de Forum > Programmierung > region rectangle [ - Suche - Neue Beiträge - Registrieren - Login - ]


.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.