r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[AGG] to discus new Rebol/View with AGG

Terry
4-Nov-2005
[584x2]
The way I see it, without an IDE, it's a lame duck.
Cyphre, when you say "Rebol with Rebcode is faster", do you mean 
the AGG library?
Graham
4-Nov-2005
[586]
No, he means using Rebcode with AGG.
BrianH
4-Nov-2005
[587]
I'm guessing AGG to do the rendering, rebcode to do the computation 
to generate the data for AGG to render.
Terry
4-Nov-2005
[588x2]
If AGG is incorporated into Rebol, isn't there a need to mention 
that in the license?
And when will be able to use AGG with async?
BrianH
4-Nov-2005
[590x2]
Is AGG licensed as BSD with the advertising clause or without?
If without then RT doesn't have to mention anything. As it is, REBOL 
is mentioned on AGG's website as a user.
Terry
4-Nov-2005
[592x2]
Anti-Grain Geometry - Version 2.0
Copyright (C) 2002-2004 Maxim Shemanarev (McSeem)


Permission to copy, use, modify, sell and distribute this software 
is granted provided this copyright notice appears in all copies. 
This software is provided "as is" without express or implied

warranty, and with no claim as to its suitability for any purpose.
Anti-Grain Geometry is an Open Source, free library. You can use 
this software in any commercial or non-commercial projects, free 
of any charge.
BrianH
4-Nov-2005
[594]
Sounds more like the MIT license, even less restrictive than BSD. 
No advertising clause, certainly.
Terry
4-Nov-2005
[595]
provided this copyright notice appears in all copies.
  Isn't that an advertising clause?
BrianH
4-Nov-2005
[596x3]
No. The advertising clause would say that they should publically 
say in all advertising of REBOL that it uses AGG. This clause just 
says that they need to include the copyright notice of AGG somewhere, 
not that the notice has to be really visible.
Since View 1.3 is just a binary right now, a string hidden in the 
binary would be sufficient. It doesn't even have to be readable to 
count for this clause, although that is getting iffy.
The advertising clause would be like the "Intel Inside" insert in 
all of the Dell advertising, for instance.
Terry
4-Nov-2005
[599]
it's not "they should"  and regarding the binary.. you should note 
the word "appears" in the license.
BrianH
4-Nov-2005
[600x3]
Most of the time that info is put in a ReadMe file or an About dialog, 
but since View has that info online, online docs are where it needs 
to be. And the online docs related to Draw do mention AGG (I think). 
That clause is less restrictive than you think.
Usually the copyright clause only needs to be in the source code 
for it to qualify.
AGG is mentioned in the View release notes, including links to the 
AGG web site.
Terry
5-Nov-2005
[603]
Yeah, AGG may be good, but I bet it can't do this  http://blueballfixed.ytmnd.com/
Pekr
5-Nov-2005
[604x7]
you bet it can, Terry:-)
Have you seen pointize demo? It is smaller, but shows how danymic 
it can be ...
and as for sound, you are right, rebol can't really do it ;-)
Terry, what you should probably realise is, that that are only probably 
TWO libraries for vector graphics in the open-source world - one 
being AGG, second one being Cairo, library which was selected by 
Mozilla foundation, Apple etc. to do SVG. Both are very good work 
imo ...
And looking at Laszlo - it is nice but definitely slower than VID. 
I think that AGG, performance wise, is even better than Flash ...
http://www.epsitec.ch/cresus/documents/base-f.php- All in AGG! Other 
companies using AGG here - http://www.antigrain.com/customers/index.html
AGG is definitely a win for Rebol (compare it to old draw, right?) 
and it provides us with professional grade vector graphics .... Look 
at Canvas RPaint - very good example of what is it capable of ...
Henrik
5-Nov-2005
[611]
the only problem right now is SHOW, which seems to slow things down 
a lot... but I think I've mentioned that before :-)
Volker
5-Nov-2005
[612]
How do you test? The actual drawing is done inside 'show, the other 
stuff sets only some values. except you use to-image, that has to 
render too.
Henrik
5-Nov-2005
[613x2]
well, I'm not really sure what goes on, but if I use cyphres rebcode 
demo it runs fine in a small window, but if I set up the display 
size to twice or three times the original size, the framerate really 
slows down. The drawing routine itself shouldn't care about the resolution, 
so I think it's something in SHOW
SHOW does some kind of "dumb" full screen refresh. it's also visible 
when using Canvas. even if you only draw one pixel, drawing is slow 
in large screen areas.
Ashley
5-Nov-2005
[615x2]
The following code demonstrates this. Comment / uncomment the draw 
effect line to see the difference a simple draw command makes.

count: 100

do-test: func [label info /local img-size start end] [
	img-size: to-pair label/text
	img: to image! layout [

  origin 0 box img-size blue reform ["Testing" img-size ". . ."] font 
  [size: 24]
	]
	view/new/options center-face layout [
		origin 0 i: image img img/size
		;effect [draw [circle 100x100 100]]
	] [no-title no-border]
	;	test loop
	start: now/time/precise
	loop count [show i]
	end: now/time/precise
	;	display result
	info/text: form to-integer count / (to-decimal end - start)
	show info
	unview
]

view layout [
	title "Resolutions"
	across la: label 100 "800x600" ia: info 100 center
	return lb: label 100 "1024x768" ib: info 100 center
	return lc: label 100 "1280x1024" ic: info 100 center
	return btn "Run" [do-test la ia do-test lb ib do-test lc ic]
]
In answer to Cyphre's question, my opinion is that changes that prevent 
(or make difficult) SVG rendering are not desirable. So if the proposed 
change(s) don't hinder SVG rendering them I'm all for them.
shadwolf
8-Nov-2005
[617]
Cyphre question :  i think the same ..  gradient is good the way 
it is for pure draw coders (i you have to make an SVG to DRAW translator 
(my case) you only need gradients that take in charge other kind 
of values nothing more...)
Cyphre
10-Nov-2005
[618x2]
Ok, thanks to all of you who responded to my qestion.
Regarding the SHOW performance: I can tell you that this improvement 
is on RT priority list.
Rebolek
10-Nov-2005
[620]
And is it on bottom of that list, or in middle or on top of it? ;)
Cyphre
10-Nov-2005
[621]
I'd say it is around the middle line *at the moment*.
Rebolek
10-Nov-2005
[622]
OK, I'm just curious :)
Volker
10-Nov-2005
[623]
Can we fold the paper?
Pekr
10-Nov-2005
[624]
:-)
Cyphre
10-Nov-2005
[625x2]
Velker, I think  you can. Send feedback to Carl about this issue. 
Maybe he will increase the priority after enough requests :-)
ups, Velker=Volker
DideC
10-Nov-2005
[627]
Cyphre: if your question is "should we create a FILL-PEN-PERCENT 
command to not overload FILL-PEN with percent values?" I say YES. 
(but the name is here as an example)

But overwhise I don't really understand what you mean.
shadwolf
11-Nov-2005
[628]
DIDEC you get the point ...  the ask is un precise. My case is particular 
a gradient iss that take in charge percent and vertorial orientation 
to feet SVG datas would be a plus. I think gradient the way they 
are yet implement in Draw/AGG are better than the SVG way. SVG is 
huum less natural less close to human way of thinking and in that 
philosophy it feets perfectly with the REBOL .
ICarii
11-Nov-2005
[629x3]
It'd be nice to have  VIEWPORT command for creating virtual surfaces 
inside AGG/Draw - especially to use it to constrain text for applications 
such as scrolling and spreadsheets..
viewport origin [pair!] size [pair!] contents [block!]
viewport 100x100 300x150 [font myfont text 150x50 "this is a large 
line of text..."]  ;here the text would use the viewport as its origin 
and screen size
Graham
18-Nov-2005
[632x2]
here here
There's already clipping commands.