Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		Moin, 
gibt's das (oben gezeigte) in AmiBlitz? 
Wenn nein: Warum nicht?
	 
	
	
	
	
 
 
	
	
	
		
	Beiträge: 666 
	Themen: 77 
	Registriert seit: Oct 2013
	
 Bewertung: 
 0
	 
 
	
	
		hackball schrieb:Moin, 
gibt's das (oben gezeigte) in AmiBlitz? 
Du meinst sicherlich als Library oder Include oder ? 
Soweit ich das sehe nicht, es gibt in der normalen graphics.lib AreaElipse_ AreaDraw_ usw... 
Aber das wird wohl kaum dem entsprechen das du gemacht hast
 Zitat:Wenn nein: Warum nicht? 
Weil du es nicht machst        
	 
	
	
	
	
 
 
	
	
	
		
	Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		Blackbird schrieb:hackball schrieb:Moin, 
gibt's das (oben gezeigte) in AmiBlitz? Du meinst sicherlich als Library oder Include oder ? 
Soweit ich das sehe nicht, es gibt in der normalen graphics.lib AreaElipse_ AreaDraw_ usw... 
Aber das wird wohl kaum dem entsprechen das du gemacht hast 
Zitat:Wenn nein: Warum nicht? 
Weil du es nicht machst        
Hm, aber da müßte ich noch viel mehr machen, z.B. in  Wanderers Includes wildern.... :lol:  
Nee, dafür ist der o.g. Src ja jetzt frei, da könnt ihr das als Maintainer mal schön selbst einbauen. :mrgreen:
	  
	
	
	
	
 
 
	
	
	
		
	Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		hackball schrieb:Ich glaube, ich weiß (wieder), warum es manchmal crasht. Die maximale Anzahl an Area-Steps wird nicht gecheckt. da müßte man einen Branch einbauen oder einen Fehler werfen. 
 
Code: ... 
 LEA      gfxbas(pc),a0 
 MOVE.l         (a0),a6 
 LEA        buff(pc),a0 
 MOVE.l         (a0),a1 
 LEA     areainf(pc),a0  ;eigene structur 
 MOVE.l         #360,d0   ;<<<<<   hard coded max steps for polygon !!! 
 JSR      _initarea(a6)  ;err.l=InitArea_(*ai.AreaInfo,&buff$,360) 
...
  
*Edit: gfxbase könnte man auch direkt nach a6.... usw. 
 :roll: Mach ich dann mal, Sünden der Jugend usw.......
	  
	
	
	
	
 
 
	
	
	
		
	Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		Ooops, muß ich erst mal wissen, was für Libnumbers noch frei sind.?
	 
	
	
	
	
 
 
	
	
	
		
	Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		Hier ist noch ein simples Beispiel für diese Lib: 
Code: ; please be sure `overflow errors` ore disabled !! thenkks ! 
; 
; linepattern demo for the RayAreaLibrary (C) by Frank Brandis 
; 
 
;FindScreen0    ;getting first screen (ted) 
Screen0,3 
 
Window1,0,0,320,250,$140e,"RayAreaLib , PatternDemo",1,0 
 
*rp=RastPort(1) 
WJam0 
 
; first,test some linepatterns 
 
;the binary values are better than Hex or Decimal 
;note: 1 is a point,0 not . 
 
pt.w=%1111111100000000:LinePattern *rp,pt:Wline 20,30,200,30,1 
pt.w=%1100110011001100:LinePattern *rp,pt:Wline 20,40,200,40,1 
pt.w=%1111000011110000:LinePattern *rp,pt:Wline 20,50,200,50,1 
pt.w=%1010101010101010:LinePattern *rp,pt:Wline 20,60,200,60,1 
pt.w=%1100000011000000:LinePattern *rp,pt:Wline 20,70,200,70,1 
pt.w=%0011110000110000:LinePattern *rp,pt:Wline 20,80,200,80,1 
pt.w=%1111111111111111:LinePattern *rp,pt:Wline 20,90,200,90,1 
 
;setting up a fillpattern 
;usefull for Wbox,WCls  etc. ( NOT for SetRast_*rp,pen !!) 
 
Pattern *rp,$5555,$AAAA,$AAAA,$5555  ;rasters 
WBox 20,100,300,130,1 
 
Pattern *rp,$FFFF,$0000,$FFFF,$0000   ;Stripes 
WBox 20,140,300,170,2 
 
Pattern *rp,$FFFF,$FFFF,$FFFF,$FFFF  ; full colour !! 
WBox 20,180,300,210,3 
 
Repeat:Until WaitEvent=$200 
 
End    ;end of line     :) 
 
NoCli 
WBStartup
 
Maybe usefull, to anyone?    
	 
	
	
	
	
 
 
	
	
	
		
	Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		Hm, stellt euch mal vor, man würde das LinePattern ROL oder ROR verändern und dann ein Rechteck mit einem entsprechend unterbrochenem LinePattern zeichnen, solange man das Rechteck mit der Mouse zeichnet... 
 
Auflösung....
	 
	
	
	
	
 
 
	
	
	
		
	Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		BTW: 
Die Library gibt es fertig hier (1.5kB): 
 
*Edit: Libnr# ist 22, also DevBeta, nach meinem Katalog. Sorry.
	 
	
	
	
	
 
 
	
	
	
		
	Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		Hier ein paar visuell ansprechendere Beispiele für Patterns, die man für das Füllen benutzen kann: 
 
Na, überzeugt?
	 
	
	
	
	
 
 
	
	
	
		
	Beiträge: 327 
	Themen: 57 
	Registriert seit: Sep 2013
	
 Bewertung: 
 7
	 
 
	
	
		Ok. 
Hier ist der Editor. Achtung!!! SEEEEEHHR ALT!! Classic, sozusagen. :roll: 
 
Und der Code zum Laden der Patterns.
 Code: NEWTYPE.lv 
  a.w 
  nam.s            ;pattern name 
  patt.w[16]     ;$0000,$7FFF usw.;4x4 gross 
End NEWTYPE 
 
 
Dim List pattlist.lv(30) 
USEPATH pattlist() 
 
DEFTYPE.w 
Dim patt.w(16,16)  ;malflaeche 
 
.... 
 
 
.loadpatts 
ResetList pattlist() 
Gosub clearall 
g$=ASLFileRequest$("name of file to load",pa$,fi$,"#?.patt",WindowX,WindowY,WindowWidth,WindowHeight) 
If g$<>"" 
  If ReadFile(0,g$) 
    FileInput0 
    If Inkey$(8)="BB^PATED"  ;kennung ok 
      ClearList pattlist() 
      While NOT Eof(0) 
        If AddLast(pattlist()) 
          \nam=Edit$(30) 
          For a=0To15 
            \patt[a]=Cvl(Inkey$(4)) 
         Next 
        EndIf 
      Wend 
      CloseFile0 
    Else 
      CloseFile0 
      EasyRequest"pattern ed message:","file format not ok !"," ok " 
    EndIf 
    GTChangeList1,#liste 
    ResetList pattlist():numb=-1 
    GTChangeList1,#liste,pattlist() 
  Else 
    EasyRequest"pattern ed message:","file not found !"," ok " 
  EndIf 
EndIf 
Use Window1 
Return
 
Und die Beispiel-Muster, zuguterletzt.
	  
	
	
	
	
 
 
	 
 |