🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.programming
Article #205091

Re: Podpis cyfrowy większej ilości podmiotów

#205091
From: firr kenobi
Date: Thu, 18 Apr 2013 09:12
132 lines
4613 bytes
W dniu czwartek, 18 kwietnia 2013 10:28:45 UTC+2 użytkownik M.M. napisał:
> On Thursday, April 18, 2013 9:44:56 AM UTC+2, firr kenobi wrote:
> 
> > a czemu taka dziwna petla 
> 
> Nie wiem... znam akurat taką implementację rysowania
> 
> tego fraktala. Co jest w niej dziwne? Jaka jest lepsza?
> 
> 
> 
> 
> 
> >  for( i=0 ; i<inf ; i++ ) {
> 
> >       const double tmp = x*x - y*y + _x;
> 
> >       if( std::fabs(tmp) > 2.0 ) break;
> 
> >       y = 2.0 * x * y + _y;
> 
> >      if( std::fabs(y) > 2.0 ) break;
> 
> >      x = tmp;
> 
> >  }
> 
> 
> 
> 
> 
> > czy dwa warunki na fabsa sa szybsze 
> 
> > niz jeden na x*x+y*y>4. ? moze
> 
> > cztery x<-2, x>2 y<-2, y>2 bylyby szybsze 
> 
> 
> 
> Jak dwa warunki, jak cztery? Nie kumam :)
> 
> 
> 
> Teraz zrobiłem tak:
> 
> 
> 
> static unsigned int computeColor( const double _x, const double _y, const unsigned int inf ) {
> 
> 	double x=0, y=0;
> 
> 	unsigned int i;
> 
> 	for( i=0 ; i<inf ; i++ ) {
> 
> 		const double tmp = x*x - y*y + _x;
> 
> 		y = 2.0 * x * y + _y;
> 
> 		if( std::fabs(y) > 2.0 || std::fabs(tmp) > 2.0 ) break;
> 
> 		x = tmp;
> 
> 	}
> 
> 	if( i==inf )
> 
> 		return 0;
> 
> 	return i * 255 / (inf-1);
> 
> }
> 
> 
> 
> I spadło jeszcze o 2 sekundy.
> 
> 
> 
> Tu cały kod rysowania:
> 
> http://pastebin.com/2tSWwMrr
> 
> 
> 
> Tutaj efekt z pomiarem czasu:
> 
> https://thumbs.rapidshare.com/thumbs/1024/D03/ED20DBD3BACA3EB9FAAD66E14301C.jpg
> 
> 
> 
> > wogole to proponuje liczyc na jaims ustalonym obszarze juz tamten 
> 
> > poprzedni -1,-1, 1,1, lepszy oraz wywalic dzielenia z petli
> 
> Na takim obszarze przy większej wartości inf mam wszystko czarne:
> 
> https://thumbs.rapidshare.com/thumbs/1024/F28/9A4A63B42170BFFB707E1970E39E1.jpg
> 
> 

no to blad powinna byc wiekszosc
widoczna - najlepiej dawac obszar by caly zbior sie miescil 

 - zb m miesci sie na osi
x od gdzies tak -2 do .5 a w 
y gdzies tak od -1.25 do 1.25 
ja ostawiam np rysowanie od -2 do 1
a w ygreku proporcjonalnie do proporcji okna (czyli dla 500 x 400 
to jest 4/5 * 3 czyli od -1.2 do 1.2
czyli konkretnie -2, -1.2 do  0.2, 1.2

jak za krotko trwa to mozna dac 
5 tys iteracji i juz

> 
> Przy małym inf mam zbyt krótki czas i ciężko robić pomiary.
> 
> 
> 
> Robię na takim:
> 
> x1 = -1.40105941;
> 
> y1 = -0.00005182;
> 
> x2 = -1.40116832;
> 
> y2 = 0.00004030;
> 
> inf = 60000;
> 
Technical Details
Message-ID: <c889ebbf-a536-458e-a61b-513dd122d382@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!ma2no3714086wib.0!news-out.google.com!hg5ni16271wib.1!nntp.google.com!gp5no250524qab.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <kkdqot$5rl$1@node2.news.atman.pl> <kkdtr5$9n9$1@node1.news.atman.pl> <2795af88-99c6-4f35-8a9d-22bda8af2925@googlegroups.com> <kkec03$n4h$1@node2.news.atman.pl> <a9253e59-21f5-43b5-853a-c60cb43c1f15@googlegroups.com> <kkfd89$o9b$1@news.task.gda.pl> <0fff07bc-e341-49a0-810c-333536e2901a@googlegroups.com> <kkh42k$81t$1@news.task.gda.pl> <b177dfc7-88f3-4cd7-9075-2acdd76f9662@googlegroups.com> <kkhr56$a62$1@news.task.gda.pl> <30021d10-a471-4cae-8f17-61eb36cb775e@googlegroups.com> <kkkjpe$b54$1@news.task.gda.pl> <8b53662c-8c31-4fc3-b82b-8173d9cf4f6f@googlegroups.com> <47d7734e-680b-4e13-995e-c0a2407217c3@googlegroups.com> <cdced490-b579-41ee-a123-afb12010cc12@googlegroups.com> <kkmvfc$hu3$2@news.task.gda.pl> <d936ef81-4b63-4dcb-8771-cc2a1faab4e1@googlegroups.com> <d4359f15-51e4-438a-9057-b46d93bfc70c@googlegroups.com> <9f8703e3-4731-4da6-9e7a-0bf564f5896e@googlegroups.com> <6f0c375b-de78-4b03-a0b4-c9e59f6f5786@googlegroups.com>

Show Full Headers
Complete Article Headers
X-Received: by 10.180.75.82 with SMTP id a18mr3467112wiw.0.1366276339866;        Thu, 18 Apr 2013 02:12:19 -0700 (PDT)
X-Received: by 10.49.62.135 with SMTP id y7mr1004702qer.26.1366276339715; Thu, 18 Apr 2013 02:12:19 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!ma2no3714086wib.0!news-out.google.com!hg5ni16271wib.1!nntp.google.com!gp5no250524qab.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Thu, 18 Apr 2013 02:12:19 -0700 (PDT)
In-Reply-To: <6f0c375b-de78-4b03-a0b4-c9e59f6f5786@googlegroups.com>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=31.61.131.16; posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 31.61.131.16
References: <kkdqot$5rl$1@node2.news.atman.pl> <kkdtr5$9n9$1@node1.news.atman.pl> <2795af88-99c6-4f35-8a9d-22bda8af2925@googlegroups.com> <kkec03$n4h$1@node2.news.atman.pl> <a9253e59-21f5-43b5-853a-c60cb43c1f15@googlegroups.com> <kkfd89$o9b$1@news.task.gda.pl> <0fff07bc-e341-49a0-810c-333536e2901a@googlegroups.com> <kkh42k$81t$1@news.task.gda.pl> <b177dfc7-88f3-4cd7-9075-2acdd76f9662@googlegroups.com> <kkhr56$a62$1@news.task.gda.pl> <30021d10-a471-4cae-8f17-61eb36cb775e@googlegroups.com> <kkkjpe$b54$1@news.task.gda.pl> <8b53662c-8c31-4fc3-b82b-8173d9cf4f6f@googlegroups.com> <47d7734e-680b-4e13-995e-c0a2407217c3@googlegroups.com> <cdced490-b579-41ee-a123-afb12010cc12@googlegroups.com> <kkmvfc$hu3$2@news.task.gda.pl> <d936ef81-4b63-4dcb-8771-cc2a1faab4e1@googlegroups.com> <d4359f15-51e4-438a-9057-b46d93bfc70c@googlegroups.com> <9f8703e3-4731-4da6-9e7a-0bf564f5896e@googlegroups.com> <6f0c375b-de78-4b03-a0b4-c9e59f6f5786@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <c889ebbf-a536-458e-a61b-513dd122d382@googlegroups.com>
Subject: Re: Podpis cyfrowy
 większej ilości podmiotów
From: firr kenobi <profesor.fir@gmail.com>
Injection-Date: Thu, 18 Apr 2013 09:12:19 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit