OpenGL: origami
Mon Jul 6 23:51:20 CEST 2009 Tobias Rautenkranz <tobias@rautenkranz.ch>
* OpenGL: origami
diff -rN -u old-doc/chunk.xsl new-doc/chunk.xsl
--- old-doc/chunk.xsl 2014-10-30 06:55:04.000000000 +0100
+++ new-doc/chunk.xsl 2014-10-30 06:55:04.000000000 +0100
@@ -2,16 +2,18 @@
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/xhtml/chunk.xsl"/>
-<xsl:import href="link-apidoc.xsl"/>
+<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/html/chunk.xsl" />
+<xsl:import href="link-apidoc.xsl" />
-<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/xhtml/highlight.xsl"/>
-<xsl:param name="highlight.source" select="1"/>
+<xsl:import href="video.xsl" />
+<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/html/highlight.xsl" />
+
+<xsl:param name="highlight.source" select="1" />
<!--
<xsl:param name="admon.graphics" select="1"/>
!-->
-<xsl:param name="use.id.as.filename" select="1"/>
+<xsl:param name="use.id.as.filename" select="1" />
</xsl:stylesheet>
diff -rN -u old-doc/introduction.xml new-doc/introduction.xml
--- old-doc/introduction.xml 2014-10-30 06:55:04.000000000 +0100
+++ new-doc/introduction.xml 2014-10-30 06:55:04.000000000 +0100
@@ -14,7 +14,7 @@
Lisp-CFFI-Qt4</ulink> (dead)</para></listitem>
</itemizedlist>
</section>
-<section><title>Limitations</title>
+<section id="limitations"><title>Limitations</title>
<itemizedlist>
<listitem><para>Ownership transfer to / from C++ of non QObject objects is seldom known to cl-smoke.
E.g.: cl-smoke might delete an instance even though it is still needed by C++.
@@ -45,7 +45,7 @@
</para>
</section>
</section>
-<section><title>Installation</title>
+<section id="installation"><title>Installation</title>
<section><title>Dependencies</title>
<itemizedlist>
<listitem><para><ulink
diff -rN -u old-doc/kde.xml new-doc/kde.xml
--- old-doc/kde.xml 2014-10-30 06:55:04.000000000 +0100
+++ new-doc/kde.xml 2014-10-30 06:55:04.000000000 +0100
@@ -9,7 +9,7 @@
<package>:kde.examples</package> containing the examples.
</para>
-<section><title>Examples</title>
+<section id="kde_examples"><title>Examples</title>
<para>
The examples can be run with:
<programlisting language="lisp">
diff -rN -u old-doc/manual.xsl new-doc/manual.xsl
--- old-doc/manual.xsl 2014-10-30 06:55:04.000000000 +0100
+++ new-doc/manual.xsl 2014-10-30 06:55:04.000000000 +0100
@@ -2,10 +2,14 @@
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
-<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/xhtml/docbook.xsl"/>
+<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/html/docbook.xsl"/>
<xsl:import href="link-apidoc.xsl"/>
-<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/xhtml/highlight.xsl"/>
+<xsl:import href="/usr/share/xml/docbook/stylesheet/nwalsh/html/highlight.xsl"/>
+
+<xsl:import href="video.xsl" />
+
<xsl:param name="highlight.source" select="1"/>
+
</xsl:stylesheet>
Binary files old-doc/origami.ogg and new-doc/origami.ogg differ
Binary files old-doc/origami.png and new-doc/origami.png differ
diff -rN -u old-doc/qt.xml new-doc/qt.xml
--- old-doc/qt.xml 2014-10-30 06:55:04.000000000 +0100
+++ new-doc/qt.xml 2014-10-30 06:55:04.000000000 +0100
@@ -23,7 +23,7 @@
the unit tests and <package>:qt.examples</package> for various examples.
</para>
-<section><title>qt:application</title>
+<section id="qapplication"><title>qt:application</title>
<para>
The <classname>qt:application</classname> object should created with:
<macro>qt:with-app</macro>. In its body the event loop can be
@@ -63,7 +63,7 @@
</section>
</section>
-<section><title>Signal-Slot</title>
+<section id="signal_slot"><title>Signal-Slot</title>
<para>
<genericfunction>qt:connect</genericfunction> connects a signal to a slot.
The signal is either a <classname>qt:qsignal</classname> created with
@@ -90,7 +90,7 @@
</para>
</section>
-<section><title>Properties</title>
+<section id="properties"><title>Properties</title>
<para>
<classname>qt:object</classname> properties can be accessed with
<methodname>qt:property</methodname> (setf-able).
@@ -106,7 +106,7 @@
</section>
-<section><title>Variant</title>
+<section id="variant"><title>Variant</title>
<para>
A <classname>qt:variant</classname> can be constructed with <methodname>qt:make-variant</methodname>
or to pass a Lisp object with <methodname>qt:make-lisp-variant</methodname>.
@@ -114,7 +114,7 @@
</para>
</section>
-<section><title>i18n</title>
+<section id="i18n"><title>i18n</title>
<para>
You can use <methodname>qt:tr</methodname> to translate strings.
</para>
@@ -151,7 +151,7 @@
</para>
</section>
-<section><title>Examples</title>
+<section id="qt_examples"><title>Examples</title>
<para>
You can run the examples with:
<programlisting language="lisp">
@@ -198,7 +198,35 @@
</section>
-<section><title>CommonQt</title>
+<section id="opengl"><title>OpenGL</title>
+<para>
+For OpenGL an binding is needed (e.g.:
+<ulink url="http://common-lisp.net/project/cl-opengl/">cl-opengl</ulink>).
+</para>
+<example><title>Origami</title>
+<para>
+<ulink url="http://tobias.rautenkranz.ch/darcsweb/darcsweb.cgi?r=cl-smoke/qt.examples;a=tree;f=/src/origami">Origami</ulink>
+draws a pleated hyperbolic paraboloid using the method described in
+<ulink url="http://arxiv.org/abs/0906.4747">(Non)existence of Pleated Folds: How Paper Folds Between Creases</ulink>
+</para>
+<mediaobject>
+<videoobject>
+<videodata fileref='origami.ogg'/>
+</videoobject>
+</mediaobject>
+<para>
+<note>
+<para>
+Because <ulink url="http://common-lisp.net/project/cl-opengl/">cl-opengl</ulink> is need to
+run the example, but is not in mudballs; the origami example is not included in the mudballs system.
+<ulink url="http://axiom-wiki.newsynthesis.org/FrontPage">Axiom</ulink> is needed for building.
+</para>
+</note>
+</para>
+</example>
+</section>
+
+<section id="commonqt"><title>CommonQt</title>
<para><ulink url="http://tobias.rautenkranz.ch/darcsweb/darcsweb.cgi?r=cl-smoke/commonqt">:cl-smoke.commonqt</ulink>
is an experimental compatibility layer to run Lisp code using the
<ulink url="http://common-lisp.net/project/commonqt/">CommonQt</ulink> API with cl-smoke.
diff -rN -u old-doc/smoke.xml new-doc/smoke.xml
--- old-doc/smoke.xml 2014-10-30 06:55:04.000000000 +0100
+++ new-doc/smoke.xml 2014-10-30 06:55:04.000000000 +0100
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
-<chapter id="smoke">
+<chapter id="usage">
<title>Usage</title>
<para></para>
<section><title>Symbols</title>
@@ -17,7 +17,7 @@
</informalexample>
</section>
-<section><title>Class</title>
+<section id="classes"><title>Class</title>
<para>
C++ classes have a corresponding CLOS class. The can be used like any CLOS class; E.g:
to make a <code>QObject</code> instance:
@@ -46,7 +46,7 @@
</para>
</section>
-<section><title>Methods</title>
+<section id="methods"><title>Methods</title>
<para>
C++ methods are generic functions in the <package>:cxx</package> package.
</para>
@@ -169,7 +169,7 @@
</section>
</section>
-<section><title>Static Methods</title>
+<section id="static_methods"><title>Static Methods</title>
<para>
The static C++ method <code>QByteArray::number(int n, int base=10)</code>
can be called by:
@@ -188,7 +188,7 @@
</para>
</section>
-<section><title>Constants</title>
+<section id="constants"><title>Constants</title>
<para>
C++ Class enums available as constants. E.g.:
<code>QColor::Rgb</code> is <constant>qt:color.+rgb+</constant>.
@@ -196,7 +196,7 @@
</para>
</section>
-<section><title>Garbage Collection</title>
+<section id="gc"><title>Garbage Collection</title>
<para>
You should be able to use C++ Class instances like normal Lisp object.
</para>
diff -rN -u old-doc/video.xsl new-doc/video.xsl
--- old-doc/video.xsl 1970-01-01 01:00:00.000000000 +0100
+++ new-doc/video.xsl 2014-10-30 06:55:04.000000000 +0100
@@ -0,0 +1,27 @@
+<?xml version='1.0'?>
+<xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+<!-- this barely works -->
+<xsl:template match="videodata">
+ <video controls="true">
+ <xsl:attribute name="src">
+ <xsl:value-of select="@fileref" />
+ </xsl:attribute>
+ <img>
+ <xsl:attribute name="src">
+ <xsl:value-of select="concat(substring-before(@fileref, 'ogg'),'png')" />
+ </xsl:attribute>
+ </img>
+ <p>
+ <a>
+ <xsl:attribute name="href">
+ <xsl:value-of select="@fileref" />
+ </xsl:attribute>
+ <xsl:text>Download Video</xsl:text>
+ </a>
+ </p>
+ </video>
+</xsl:template>
+
+</xsl:stylesheet>