From: Arne S. <sch...@kn...> - 2009-10-03 14:51:17
|
Hi Christopher, I would not use libpng anymore as Gdiplus can handle loading PNG's (at least if you can require Win XP) cheers arne On Oct 3, 2009, at 4:25 PM, Christopher Randall wrote: > Hey, Arne: > > Never mind. Figured it out, with the help of this post on KvR: > > http://www.kvraudio.com/forum/viewtopic.php?t=245092 > > Christopher Randall > Audio Damage, Inc. > http://www.audiodamage.com > > > > > On Oct 3, 2009, at 6:38 AM, Arne Scheffler wrote: > >> Hi 'Tick, >> I think you don't need this anymore. Just add >> "VSTGUI_FLOAT_COORDINATES" as a preprocessor definition, and for >> Windows add "GDIPLUS=1" (if this isn't already set per default, I >> don't remember). >> Then you can set the draw mode of the context to kAntialias and draw >> either point for point or use CDrawContext::drawLines(..) to draw >> your >> curve. >> And yes, coming from VSTGUI 2.2 is a lot of work. Check out the >> "Migrating from 2.3.rtf" and in the html documentation the page >> "Changes from earlier versions of VSTGUI", this should help you a >> little bit. >> >> cheers >> arne >> >> >> On Oct 3, 2009, at 1:12 PM, Big Tick wrote: >> >>> Hi Arne, >>> >>> I use it for drawing my own, arbitrary shape antialiased curves >>> using >>> "float" coordinates. So if you want to set the value of pixel at >>> coordinates (10.25, 3.25) , you will actually set 4 pixels (the 4 >>> neighbors), using alpha based on distance. >>> >>> Something like this: >>> >>> const CColor blendColors(const CColor &c1, const CColor &c2, float >>> mix) { >>> const CColor res = { >>> (unsigned char)((long)c1.red+(long)((float)(c2.red-c1.red)*mix)), >>> (unsigned char)((long)c1.green+(long)((float)(c2.green- >>> c1.green)*mix)), >>> (unsigned char)((long)c1.blue+(long)((float)(c2.blue- >>> c1.blue)*mix)), >>> 0}; >>> return res; >>> } >>> void OffScreenCControl::drawAntialiasedPixel(float x, float y, const >>> CColor& color){ >>> CPoint P2i0((int)x, (int)y); >>> CPoint P2i(P2i0); >>> float beta1 = 1-(y - (float)(P2i.v)); >>> float beta2 = 1-(x - (float)(P2i.h)); >>> _ctx->drawPoint(P2i, blendColors(_ctx->getPoint(P2i), color, >>> beta1*beta2)); >>> P2i(P2i0.h, P2i0.v+1); >>> _ctx->drawPoint(P2i, blendColors(_ctx->getPoint(P2i), color, (1- >>> beta1)*beta2)); >>> P2i(P2i0.h+1, P2i0.v); >>> _ctx->drawPoint(P2i, blendColors(_ctx->getPoint(P2i), color, beta1* >>> (1- >>> beta2))); >>> P2i(P2i0.h+1, P2i0.v+1); >>> _ctx->drawPoint(P2i, blendColors(_ctx->getPoint(P2i), color, (1- >>> beta1)*(1-beta2))); >>> } >>> >>> You need GetPoint because the 4 pixels you want to set might already >>> have a value - so I alphablend the previous value with the one I >>> want >>> to set. >>> >>> It worked wonders on the venerable vstgui 2.2, upon which Rhino is >>> built. But I now need to upgrade for the OSX port, and the jump from >>> 2.2 to 3.6 is extremely painful. Actually, I've broken everything, >>> on >>> all platforms :) >>> >>> 'Tick >>> >>> >>>> Hi 'Tick, >>>> the reason was that it is not possible any more on Mac OS X. >>>> And no, there's no replacement. Why do you need it ? >>>> >>>> cheers >>>> arne >>>> >>>> >>>> On Oct 1, 2009, at 9:34 AM, Big Tick wrote: >>>> >>>>> Hi guys, >>>>> >>>>> what was the reason for deprecating this ? Is there any >>>>> replacement ? >>>>> >>>>> Cheers, >>>>> 'Tick >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> Come build with us! The BlackBerry® Developer Conference in >>>>> SF, >>>>> CA >>>>> is the only developer event you need to attend this year. >>>>> Jumpstart >>>>> your >>>>> developing skills, take BlackBerry mobile applications to market >>>>> and >>>>> stay >>>>> ahead of the curve. Join us from November 9-12, 2009. Register >>>>> now! >>>>> http://p.sf.net/sfu/devconf >>>>> _______________________________________________ >>>>> Vstgui-devel mailing list >>>>> Vst...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/vstgui-devel >>>> >>>> >>>> ------------------------------------------------------------------------------ >>>> Come build with us! The BlackBerry® Developer Conference in SF, >>>> CA >>>> is the only developer event you need to attend this year. Jumpstart >>>> your >>>> developing skills, take BlackBerry mobile applications to market >>>> and >>>> stay >>>> ahead of the curve. Join us from November 9-12, 2009. Register >>>> now! >>>> http://p.sf.net/sfu/devconf >>>> _______________________________________________ >>>> Vstgui-devel mailing list >>>> Vst...@li... >>>> https://lists.sourceforge.net/lists/listinfo/vstgui-devel >>> >>> >>> ------------------------------------------------------------------------------ >>> Come build with us! The BlackBerry® Developer Conference in SF, >>> CA >>> is the only developer event you need to attend this year. Jumpstart >>> your >>> developing skills, take BlackBerry mobile applications to market and >>> stay >>> ahead of the curve. Join us from November 9-12, 2009. Register >>> now! >>> http://p.sf.net/sfu/devconf >>> _______________________________________________ >>> Vstgui-devel mailing list >>> Vst...@li... >>> https://lists.sourceforge.net/lists/listinfo/vstgui-devel >> >> >> ------------------------------------------------------------------------------ >> Come build with us! The BlackBerry® Developer Conference in SF, >> CA >> is the only developer event you need to attend this year. Jumpstart >> your >> developing skills, take BlackBerry mobile applications to market and >> stay >> ahead of the curve. Join us from November 9-12, 2009. Register >> now! >> http://p.sf.net/sfu/devconf >> _______________________________________________ >> Vstgui-devel mailing list >> Vst...@li... >> https://lists.sourceforge.net/lists/listinfo/vstgui-devel > > > ------------------------------------------------------------------------------ > Come build with us! The BlackBerry® Developer Conference in SF, CA > is the only developer event you need to attend this year. Jumpstart > your > developing skills, take BlackBerry mobile applications to market and > stay > ahead of the curve. Join us from November 9-12, 2009. Register > now! > http://p.sf.net/sfu/devconf > _______________________________________________ > Vstgui-devel mailing list > Vst...@li... > https://lists.sourceforge.net/lists/listinfo/vstgui-devel |