<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="cs">
	<id>http://postgres.cz/index.php?action=history&amp;feed=atom&amp;title=Zdrojov%C3%BD_k%C3%B3d_procedury_generuj%C3%ADc%C3%AD_frakt%C3%A1l_pro_PostgreSQL</id>
	<title>Zdrojový kód procedury generující fraktál pro PostgreSQL - Historie editací</title>
	<link rel="self" type="application/atom+xml" href="http://postgres.cz/index.php?action=history&amp;feed=atom&amp;title=Zdrojov%C3%BD_k%C3%B3d_procedury_generuj%C3%ADc%C3%AD_frakt%C3%A1l_pro_PostgreSQL"/>
	<link rel="alternate" type="text/html" href="http://postgres.cz/index.php?title=Zdrojov%C3%BD_k%C3%B3d_procedury_generuj%C3%ADc%C3%AD_frakt%C3%A1l_pro_PostgreSQL&amp;action=history"/>
	<updated>2026-05-12T23:44:51Z</updated>
	<subtitle>Historie editací této stránky</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>http://postgres.cz/index.php?title=Zdrojov%C3%BD_k%C3%B3d_procedury_generuj%C3%ADc%C3%AD_frakt%C3%A1l_pro_PostgreSQL&amp;diff=240&amp;oldid=prev</id>
		<title>imported&gt;WikiSysop v 22. 2. 2007, 12:49</title>
		<link rel="alternate" type="text/html" href="http://postgres.cz/index.php?title=Zdrojov%C3%BD_k%C3%B3d_procedury_generuj%C3%ADc%C3%AD_frakt%C3%A1l_pro_PostgreSQL&amp;diff=240&amp;oldid=prev"/>
		<updated>2007-02-22T12:49:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
DROP SCHEMA fractal CASCADE;&lt;br /&gt;
&lt;br /&gt;
CREATE SCHEMA fractal;&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE fractal.disp (&lt;br /&gt;
  id INT PRIMARY KEY,&lt;br /&gt;
  content VARCHAR(1000)&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
CREATE TABLE fractal.shade (&lt;br /&gt;
  id INT PRIMARY KEY,&lt;br /&gt;
  value INT&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
CREATE FUNCTION ord(text) RETURNS int AS $$SELECT ascii($1); $$ LANGUAGE SQL IMMUTABLE; -- &amp;lt;nove&amp;gt;                                                                                                                                &lt;br /&gt;
CREATE FUNCTION concat(text, text) RETURNS text AS $$ SELECT $1 || $2; $$ LANGUAGE SQL IMMUTABLE; -- &amp;lt;nove&amp;gt;                                                                                                                      &lt;br /&gt;
&lt;br /&gt;
INSERT INTO fractal.shade (id,value) VALUES (0,ORD(&amp;#039; &amp;#039;)),(1,ORD(&amp;#039;.&amp;#039;)),(2,ORD(&amp;#039;,&amp;#039;)),(3,ORD(&amp;#039;-&amp;#039;)),(4,ORD(&amp;#039;~&amp;#039;)),&lt;br /&gt;
(5,ORD(&amp;#039;*&amp;#039;)),(6,ORD(&amp;#039;:&amp;#039;)),(7,ORD(&amp;#039;;&amp;#039;)),(8,ORD(&amp;#039;+&amp;#039;)),&lt;br /&gt;
(9,ORD(&amp;#039;o&amp;#039;)),(10,ORD(&amp;#039;O&amp;#039;)),(11,ORD(&amp;#039;&amp;amp;&amp;#039;)),(12,ORD(&amp;#039;%&amp;#039;)),(13,ORD(&amp;#039;@&amp;#039;));&lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE FUNCTION fractal.mandelbrot (IN x_max INT, IN y_max INT, OUT _content VARCHAR(1000)) -- &amp;lt;zm&amp;gt;                                                                                                                   &lt;br /&gt;
RETURNS SETOF VARCHAR(1000) AS $$ -- &amp;lt;nove&amp;gt;                                                                                                                                                                                      &lt;br /&gt;
BEGIN&lt;br /&gt;
  DECLARE x INT DEFAULT 0;&lt;br /&gt;
  DECLARE y INT DEFAULT 0;&lt;br /&gt;
  DECLARE xf0 FLOAT;&lt;br /&gt;
  DECLARE yf0 FLOAT;&lt;br /&gt;
  DECLARE xf1 FLOAT;&lt;br /&gt;
  DECLARE yf1 FLOAT;&lt;br /&gt;
  DECLARE tf FLOAT;&lt;br /&gt;
  DECLARE l INT;&lt;br /&gt;
  DECLARE l_max INT;&lt;br /&gt;
  DECLARE buffer VARCHAR(1000);&lt;br /&gt;
  DECLARE tint INT;&lt;br /&gt;
  TRUNCATE fractal.disp; -- &amp;lt;zm&amp;gt;                                                                                                                                                                                                 &lt;br /&gt;
  SET l_max = (SELECT MAX(id) FROM fractal.shade LIMIT 1); -- &amp;lt;zm&amp;gt;                                                                                                                                                               &lt;br /&gt;
  WHILE y&amp;lt;y_max DO&lt;br /&gt;
    SET buffer=&amp;#039;&amp;#039;;&lt;br /&gt;
    SET x=0;&lt;br /&gt;
    WHILE x&amp;lt;x_max DO&lt;br /&gt;
      SET xf0=x*4.0/x_max-2.0;&lt;br /&gt;
      SET yf0=y*4.0/y_max-2.0;&lt;br /&gt;
      SET xf1=xf0;&lt;br /&gt;
      SET yf1=yf0;&lt;br /&gt;
      SET l=0;&lt;br /&gt;
      WHILE l&amp;lt;l_max AND xf1*xf1+yf1*yf1&amp;lt;4.0 DO&lt;br /&gt;
        SET tf=xf1*xf1-yf1*yf1+xf0;&lt;br /&gt;
        SET yf1=2.0*xf1*yf1+yf0;&lt;br /&gt;
        SET xf1=tf;&lt;br /&gt;
        SET l=l+1;&lt;br /&gt;
      END WHILE;&lt;br /&gt;
      SET tint = (SELECT value FROM fractal.shade WHERE id=l); -- &amp;lt;zm&amp;gt;                                                                                                                                                           &lt;br /&gt;
      SET buffer=CONCAT(chr(tint),buffer); --&amp;lt;zm&amp;gt;                                                                                                                                                                                &lt;br /&gt;
      SET x=x+1;&lt;br /&gt;
    END WHILE;&lt;br /&gt;
    INSERT INTO fractal.disp (id,content) VALUES (y,buffer); -- &amp;lt;zm&amp;gt;                                                                                                                                                             &lt;br /&gt;
    SET y=y+1;&lt;br /&gt;
  END WHILE;&lt;br /&gt;
  RETURN (SELECT content FROM fractal.disp ORDER BY id ASC); -- &amp;lt;zm&amp;gt;                                                                                                                                                             &lt;br /&gt;
END;&lt;br /&gt;
$$ LANGUAGE plpgpsm;&lt;br /&gt;
&lt;br /&gt;
SELECT * FROM fractal.mandelbrot (50,30); -- &amp;lt;zm&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>imported&gt;WikiSysop</name></author>
	</entry>
</feed>