Compare commits
307
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a3dcc30da3 | ||
|
|
edb693e538 | ||
|
|
9948ef9665 | ||
|
|
ea81315884 | ||
|
|
78f890cf50 | ||
|
|
b17650e5e7 | ||
|
|
1c1a582a99 | ||
|
|
1d60f4e6ca | ||
|
|
eae4a6fb11 | ||
|
|
92114eac84 | ||
|
|
21198e1a05 | ||
|
|
11d9f818c1 | ||
|
|
f780209956 | ||
|
|
c565396bac | ||
|
|
a850d2e75e | ||
|
|
fae364dfff | ||
|
|
6644f84fb7 | ||
|
|
e7eb0174fc | ||
|
|
d5b9034737 | ||
|
|
a9551caa99 | ||
|
|
82bfb9649c | ||
|
|
57cfe814bc | ||
|
|
e10cec999d | ||
|
|
d8cf182d6a | ||
|
|
b1c39dfb44 | ||
|
|
808c2e2f87 | ||
|
|
6de1069331 | ||
|
|
dab0d4e801 | ||
|
|
edeba28b49 | ||
|
|
ad5b315781 | ||
|
|
86fda4f51d | ||
|
|
a3f128630e | ||
|
|
a3885cc38d | ||
|
|
b299d9c169 | ||
|
|
e4bf5928fc | ||
|
|
98a4a76a5c | ||
|
|
ea113bd8ee | ||
|
|
61bf8aabf8 | ||
|
|
a07efeb23e | ||
|
|
aaee10184b | ||
|
|
ca1650ef1f | ||
|
|
3e49585be1 | ||
|
|
b584009093 | ||
|
|
33a3c075d2 | ||
|
|
a1ed5de994 | ||
|
|
99f53ef3df | ||
|
|
9a1bd8e037 | ||
|
|
1401cfc0bd | ||
|
|
d876c72b9f | ||
|
|
d8107a8a94 | ||
|
|
f65436fe1d | ||
|
|
d563cdc45b | ||
|
|
70035a87fa | ||
|
|
46373f60c7 | ||
|
|
bb5501d604 | ||
|
|
dce8e168c8 | ||
|
|
5a4b8fc28b | ||
|
|
62e29bb761 | ||
|
|
59a59b91fb | ||
|
|
e0fd0aca12 | ||
|
|
13e2b1731d | ||
|
|
cdbbb8e82d | ||
|
|
f78c0f9f8d | ||
|
|
f32c1c09a3 | ||
|
|
0258c758fa | ||
|
|
2c06118b4c | ||
|
|
498e2baf69 | ||
|
|
fa5079f17f | ||
|
|
eaa5785dcb | ||
|
|
3cdc7b7a70 | ||
|
|
22fe96c0b7 | ||
|
|
29874cae9d | ||
|
|
84d6833e31 | ||
|
|
275655e6a1 | ||
|
|
7991abc471 | ||
|
|
0a2ce363e1 | ||
|
|
19acfe384e | ||
|
|
cbf637d4db | ||
|
|
ba875a2c4d | ||
|
|
7de2a4975b | ||
|
|
bf2240da7d | ||
|
|
c74ed877ad | ||
|
|
a0042385f9 | ||
|
|
cbcb0f1a0d | ||
|
|
7d8c376f4c | ||
|
|
df2aec44ba | ||
|
|
aeeb1e5680 | ||
|
|
dc96d6086c | ||
|
|
d42a684ae2 | ||
|
|
dfb154b756 | ||
|
|
ed64ff7be2 | ||
|
|
cfa713fd11 | ||
|
|
fa271112cf | ||
|
|
fc0c5ebb09 | ||
|
|
48c1a5029c | ||
|
|
883cb28aa7 | ||
|
|
9186eb51df | ||
|
|
0ad3d56fe6 | ||
|
|
0bf962a7f6 | ||
|
|
4d01153930 | ||
|
|
44d79846d1 | ||
|
|
1599fed38f | ||
|
|
67309e4ea2 | ||
|
|
a98f7e5e38 | ||
|
|
643b4b2566 | ||
|
|
8615bc9ae7 | ||
|
|
99ef448bef | ||
|
|
1397aa2a8f | ||
|
|
8f5de9e4f7 | ||
|
|
d7aa646b5f | ||
|
|
436414d588 | ||
|
|
a4bb42056d | ||
|
|
7c07ba886a | ||
|
|
69a09040d0 | ||
|
|
8d3bf66ef0 | ||
|
|
11af9d2f02 | ||
|
|
be1c7e50a4 | ||
|
|
69027349c0 | ||
|
|
63d9f459c4 | ||
|
|
ef76a07ab7 | ||
|
|
a1b37a4ffb | ||
|
|
9d65e2150a | ||
|
|
39bf082110 | ||
|
|
55c1d2876c | ||
|
|
dbc0b4af3d | ||
|
|
4d1db574ea | ||
|
|
0f4daee750 | ||
|
|
3cbe336bca | ||
|
|
4fd3300866 | ||
|
|
9e2eb1d7e4 | ||
|
|
36921b9558 | ||
|
|
11ad5308b0 | ||
|
|
1ed13d126e | ||
|
|
cd2ffce237 | ||
|
|
f4a25e1b6e | ||
|
|
21d756d16b | ||
|
|
2662b68ada | ||
|
|
885868d9be | ||
|
|
90ed489183 | ||
|
|
1bb7e39c5e | ||
|
|
2d1b45a5e1 | ||
|
|
7ec1db1d20 | ||
|
|
18013ea3cd | ||
|
|
6cd328bcde | ||
|
|
0899eaae89 | ||
|
|
ede02a3df8 | ||
|
|
8c7742c5bd | ||
|
|
1d7adf8f28 | ||
|
|
ae223acf66 | ||
|
|
3be59d3fd2 | ||
|
|
63727fbc07 | ||
|
|
8c1f0504a3 | ||
|
|
b4156e8ec3 | ||
|
|
fe25340900 | ||
|
|
99b99d3606 | ||
|
|
4328c18735 | ||
|
|
aaaa03d551 | ||
|
|
8361967ac2 | ||
|
|
967a90023a | ||
|
|
2e4548ef83 | ||
|
|
fae3081fb9 | ||
|
|
1146caea36 | ||
|
|
e0b168eb89 | ||
|
|
9741695318 | ||
|
|
578c762447 | ||
|
|
5b7da48f31 | ||
|
|
7a922fe5d8 | ||
|
|
1388259176 | ||
|
|
acc8823d98 | ||
|
|
f365c11ec1 | ||
|
|
62952c6331 | ||
|
|
624fad9a7b | ||
|
|
e61c6c9d57 | ||
|
|
d6451a99da | ||
|
|
d22b8e21d7 | ||
|
|
ad2a402ca8 | ||
|
|
362603d715 | ||
|
|
134aff093a | ||
|
|
721f68cb07 | ||
|
|
638cd0e7d8 | ||
|
|
396c3d926e | ||
|
|
75287e6182 | ||
|
|
683e5310b3 | ||
|
|
b2c798baf4 | ||
|
|
c06a7d8f4c | ||
|
|
27860dc1a2 | ||
|
|
71414aea87 | ||
|
|
f7d19b332f | ||
|
|
75b3565ce8 | ||
|
|
dd681d275c | ||
|
|
d2fc800605 | ||
|
|
3b79ce463d | ||
|
|
bc3639f8a8 | ||
|
|
a2b4dd63e1 | ||
|
|
692c2e898f | ||
|
|
8fdcbfabde | ||
|
|
b18d6242ba | ||
|
|
4e042ff9f3 | ||
|
|
0f0c20432e | ||
|
|
f9ba851165 | ||
|
|
b781919c61 | ||
|
|
bd97890d55 | ||
|
|
b3f9658f7d | ||
|
|
8a6b7b1c53 | ||
|
|
ff0199c100 | ||
|
|
be960061fb | ||
|
|
142c4aa815 | ||
|
|
35b70937c1 | ||
|
|
950a9e0273 | ||
|
|
4205287499 | ||
|
|
f8747d12b2 | ||
|
|
d2be3ee2ff | ||
|
|
410f41ff82 | ||
|
|
ac0e0cc8e7 | ||
|
|
f322e69e3e | ||
|
|
6a260a0970 | ||
|
|
3f01a136fd | ||
|
|
96b1e30342 | ||
|
|
4943b5f5b3 | ||
|
|
9dc564d1a7 | ||
|
|
76ab3b764c | ||
|
|
de9870ea91 | ||
|
|
8129d9a1b5 | ||
|
|
dc5ebe9dec | ||
|
|
5e330f0d2f | ||
|
|
98ffef65ac | ||
|
|
01a8889fed | ||
|
|
9478650105 | ||
|
|
6206f52eb6 | ||
|
|
cf63c4975e | ||
|
|
bcfc72b23a | ||
|
|
96e53f7866 | ||
|
|
c595bb81b2 | ||
|
|
353b8a12aa | ||
|
|
178bd0c853 | ||
|
|
c4cbb4b6a5 | ||
|
|
64d5723d41 | ||
|
|
426d2b40a8 | ||
|
|
0d40be5ae8 | ||
|
|
0890a513f8 | ||
|
|
0b2b5e8399 | ||
|
|
35bfe101c8 | ||
|
|
ecb408ff6b | ||
|
|
1a8fe5a500 | ||
|
|
95940652b9 | ||
|
|
19abf6a54d | ||
|
|
dcc9ee9ff1 | ||
|
|
2821db6bfe | ||
|
|
8e19dc7ebf | ||
|
|
f96a9fd5a6 | ||
|
|
0e1bd8339b | ||
|
|
5f80d5a882 | ||
|
|
1671b45dc9 | ||
|
|
7f30eb4aba | ||
|
|
e79d575cfd | ||
|
|
df402c9c5f | ||
|
|
40e0b10389 | ||
|
|
0d79307328 | ||
|
|
320def8206 | ||
|
|
db01ef9359 | ||
|
|
84ef79844f | ||
|
|
dd0c345636 | ||
|
|
dea9ac84f8 | ||
|
|
0fd7335db9 | ||
|
|
3354edfffb | ||
|
|
d52b854f16 | ||
|
|
a52c1e5815 | ||
|
|
14882e538c | ||
|
|
24df963236 | ||
|
|
7fa483a2bd | ||
|
|
da38ae2884 | ||
|
|
9b9ddc4a4c | ||
|
|
34906a2c81 | ||
|
|
24889fe7ef | ||
|
|
02ee2e3c3b | ||
|
|
41efde794c | ||
|
|
db9aa4b76c | ||
|
|
e1c1710865 | ||
|
|
10f7d23732 | ||
|
|
961b847775 | ||
|
|
b58abb35e7 | ||
|
|
8f0144c51a | ||
|
|
8e139b90ca | ||
|
|
7e0613d532 | ||
|
|
27f432a261 | ||
|
|
03032eb593 | ||
|
|
c67d50cdf2 | ||
|
|
3f871164be | ||
|
|
a275134910 | ||
|
|
45b578eedf | ||
|
|
2c5b038575 | ||
|
|
1543947796 | ||
|
|
7eec08a02b | ||
|
|
ea8150060b | ||
|
|
4a93a03ee9 | ||
|
|
50647ec4f8 | ||
|
|
fe423e25dd | ||
|
|
5c83525b47 | ||
|
|
4425f74040 | ||
|
|
2048d15a12 | ||
|
|
bd51a2b271 | ||
|
|
59308f36dd | ||
|
|
e242b13ca1 | ||
|
|
9b219ef0c1 | ||
|
|
2ca0895860 | ||
|
|
b49052e2c4 | ||
|
|
5b763e1a99 |
+1
-3
@@ -126,6 +126,7 @@ if(COMMAND CMAKE_POLICY)
|
||||
CMAKE_POLICY(SET CMP0017 OLD)
|
||||
if ("${CMAKE_VERSION}" VERSION_GREATER 2.99)
|
||||
CMAKE_POLICY(SET CMP0026 OLD)
|
||||
CMAKE_POLICY(SET CMP0042 OLD)
|
||||
endif ("${CMAKE_VERSION}" VERSION_GREATER 2.99)
|
||||
endif(COMMAND CMAKE_POLICY)
|
||||
|
||||
@@ -906,9 +907,6 @@ are compiled only if they are not detected as being available and functioning
|
||||
as expected.
|
||||
")
|
||||
|
||||
# Set the location of the BRL-CAD bundled Boost header directory:
|
||||
set(BRLCAD_BOOST_INCLUDE_DIR "${CMAKE_SOURCE_DIR}/src/other/boost")
|
||||
|
||||
if(MSVC)
|
||||
set(BRLCAD_BUNDLED_LIBS_DEFAULT "BUNDLED")
|
||||
else(MSVC)
|
||||
|
||||
@@ -48,7 +48,7 @@ changes made. See document footer for additional details.
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
||||
--- 2014-02-05 Release 7.24.2 ---
|
||||
--- 2014-06-02 Release 7.24.2 ---
|
||||
----------------------------------------------------------------------
|
||||
|
||||
This patch release includes a plethora of significant bug fixes and
|
||||
|
||||
@@ -67,6 +67,8 @@ THESE TASKS SHOULD HAPPEN WITHIN TWO RELEASE ITERATIONS
|
||||
THESE ARE UNSCHEDULED BACKLOG TASKS
|
||||
-----------------------------------
|
||||
|
||||
* geometry symbolic links (hard and soft links)
|
||||
|
||||
* investigate INFINITY spatial partitioning issue.
|
||||
|
||||
* implement a region anointment feature where the user can turn an
|
||||
|
||||
+4
-4
@@ -24,7 +24,7 @@ lessons/
|
||||
resources/
|
||||
The DocBook xsl files are contained within the "other"
|
||||
subdirectory. Also included there are various directories and
|
||||
files associated with DB validation, fonts, snd hyphenation.
|
||||
files associated with DB validation, fonts, and hyphenation.
|
||||
The "brlcad" subdirectory contains files customized for
|
||||
BRL-CAD products including common files and images.
|
||||
|
||||
@@ -68,7 +68,7 @@ the file 'README.DB_authors_notes'.
|
||||
The text character code requirements may eventually be enforced by a
|
||||
pre-commit hook script.
|
||||
|
||||
CONVERTING MAN FORMAT TO DOCBBOOK
|
||||
CONVERTING MAN FORMAT TO DOCBOOK
|
||||
---------------------------------
|
||||
|
||||
The doclifter program (available in a Debian or Ubuntu distribution)
|
||||
@@ -103,9 +103,9 @@ documents:
|
||||
For pdf documents:
|
||||
|
||||
* fop
|
||||
a java program provide by the Apache Software Foundation; note
|
||||
a java program provided by the Apache Software Foundation; note
|
||||
that a minimum of version 1.0 is required to use the
|
||||
hyphenation binaries provided in thre resources sub-directory
|
||||
hyphenation binaries provided in the resources sub-directory
|
||||
(see http://xmlgraphics.apache.org/fop/). Also, version 1.0
|
||||
has some new font support features and we recommend using that
|
||||
version (or later) for DB processing.
|
||||
|
||||
@@ -527,7 +527,7 @@ Engineering Company, 2002):</para>
|
||||
</section>
|
||||
<section><info><title>Converting From EUCLID Format</title></info>
|
||||
|
||||
<para>EUCLID is one of Europe's primary product design, manufacturing, and engineering CAD packages (though it is quickly being superceded by CATIA). Formerly distributed by the European Aeronautic Defence and Space Company's Matra Datavision subsidiary and now a product of the IBM subsidiary MDTVISION, the package was developed for the design and manufacture of complex models and has been used on major systems such as the Airbus, Eurocopter, Ariane, Eurofighter, Astrium, and Euromissile.</para>
|
||||
<para>EUCLID is one of Europe's primary product design, manufacturing, and engineering CAD packages (though it is quickly being superseded by CATIA). Formerly distributed by the European Aeronautic Defence and Space Company's Matra Datavision subsidiary and now a product of the IBM subsidiary MDTVISION, the package was developed for the design and manufacture of complex models and has been used on major systems such as the Airbus, Eurocopter, Ariane, Eurofighter, Astrium, and Euromissile.</para>
|
||||
<para>Package features include specialized applications for design, styling, drafting, analysis, machining, and product data management. Recent enhancements have focused on automatic creation of 2-D drawings from 3-D models, milling cycles, two- to four-axis wire cutting, sheet metal design, mold design, and standard data exchange format interfaces.</para>
|
||||
<para>EUCLID offers several data translation interfaces, including those for DXF, IGES, VDA-FS, STL, and SET formats. In addition, other modules are available to help refine and customize data transfer, with direct connectivity at two levels available for CATIA (V4/V5) data transfer using BREPs to handle surface data. EUCLID geometry can be output to standard graphic (e.g., PostScript, Encapsulated PostScript, and Interleaf) and plotting (e.g., CalComp, HP, HP/GL2, OCE, and Versatec) formats as well as to an STL file.</para>
|
||||
<para>The <command>euclid-g</command> converter converts an ASCII EUCLID ``decoded'' format file to BRL-CAD. Each part is converted to a BRL-CAD region consisting of a single BOT primitive.</para>
|
||||
|
||||
@@ -255,7 +255,7 @@ variable is either
|
||||
<emphasis remap='I'>[hostname:]</emphasis><filename>/dev/</filename><emphasis remap='I'>device_name[num]</emphasis>
|
||||
or
|
||||
<emphasis remap='I'>UNIX_path ,</emphasis>
|
||||
the pathname of a disk file to be used as a "virtual framebuffer."
|
||||
the pathname of a disk file to be used as a "virtual framebuffer".
|
||||
<emphasis remap='I'>Hostname</emphasis>
|
||||
is the name of a remote machine if the remote framebuffer interface
|
||||
is being used.
|
||||
@@ -302,9 +302,9 @@ Here's a list of some of the common options you may encounter:</para>
|
||||
<para>The "high resolution" flag, increasing the default screen and file
|
||||
size of 512x512
|
||||
to 1024x1024. Has same effect as
|
||||
<option>-s 1024 -S 1024</option>
|
||||
<option>-s</option> 1024 (or <option>-S</option> 1024)
|
||||
but exists as a convenient shorthand held over from the simple days
|
||||
when framebuffers where square, and only came in two resolutions.
|
||||
when framebuffers were square, and only came in two resolutions.
|
||||
This historical usage unfortunately preempts this letter from use
|
||||
as a height specifier, forcing that function to relocate under
|
||||
protest to
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Bw-fb</emphasis>
|
||||
<para><command>bw-fb</command>
|
||||
reads a
|
||||
<citerefentry><refentrytitle>bw</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format file
|
||||
@@ -42,7 +42,7 @@ image on the currently selected framebuffer.
|
||||
The environment variable
|
||||
<emphasis remap="I">FB_FILE</emphasis>
|
||||
specifies
|
||||
the current framebuffer, see
|
||||
the current framebuffer; see
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
Alternatively, the framebuffer may be explicitly specified
|
||||
by using the
|
||||
@@ -57,10 +57,7 @@ Specifying the
|
||||
flag causes the program to attempt to autosize.
|
||||
A table of common image sizes is consulted, and if any match
|
||||
the size of the input file, then the width and height values
|
||||
associated with that size will be used.
|
||||
Specifying the
|
||||
<option>-h</option>
|
||||
flag changes both of these sizes to 1024x1024.</para>
|
||||
associated with that size will be used.</para>
|
||||
|
||||
<para>If the
|
||||
<option>-i</option>
|
||||
@@ -82,7 +79,7 @@ flag will zoom and center on the image being displayed
|
||||
to make it fill the display area.</para>
|
||||
|
||||
<para>The flags
|
||||
<option>-R</option>,<emphasis remap="B"> -G</emphasis>, and<emphasis remap="B"> -B</emphasis>
|
||||
<option>-R</option>, <option>-G</option>, and <option>-B</option>
|
||||
select individual color planes into which the image will be loaded.
|
||||
One or more can be given. By default all three colors are written
|
||||
with the
|
||||
@@ -90,28 +87,28 @@ with the
|
||||
pixel value.</para>
|
||||
|
||||
<para>The
|
||||
<option>-w </option>file_width
|
||||
<option>-w </option><replaceable>file_width</replaceable>
|
||||
flag specifies the width of each scanline in the input file, in pixels.
|
||||
<option>-W </option>scr_width
|
||||
<option>-W </option><replaceable>scr_width</replaceable>
|
||||
does the same for the display device.</para>
|
||||
|
||||
<para>The
|
||||
<option>-n </option>file_height
|
||||
<option>-n </option><replaceable>file_height</replaceable>
|
||||
and
|
||||
<option>-N </option>scr_height
|
||||
flags specify the height in scanlines of the input file or display device
|
||||
<option>-N </option><replaceable>scr_height</replaceable>
|
||||
flags specify the height in scanlines of the input file and display device,
|
||||
respectively.</para>
|
||||
|
||||
<para><option>-s </option>squarefilesize
|
||||
<para><option>-s </option><replaceable>squarefilesize</replaceable>
|
||||
and
|
||||
<option>-S </option>squarescrsize
|
||||
<option>-S </option><replaceable>squarescrsize</replaceable>
|
||||
set both the height and width to the size given.</para>
|
||||
|
||||
<para><option>-x </option>file_xoff,
|
||||
<option>-y </option>file_yoff,
|
||||
<option>-X </option>scr_xoff,
|
||||
<para><option>-x </option><replaceable>file_xoff</replaceable>,
|
||||
<option>-y </option><replaceable>file_yoff</replaceable>,
|
||||
<option>-X </option><replaceable>scr_xoff</replaceable>,
|
||||
and
|
||||
<option>-Y </option>scr_yoff
|
||||
<option>-y </option><replaceable>scr_yoff</replaceable>
|
||||
will offset into the file or onto the screen by the given amounts.
|
||||
The coordinate system for these offsets is first quadrant, with
|
||||
the origin at the lower left corner of the image.</para>
|
||||
@@ -122,7 +119,7 @@ the origin at the lower left corner of the image.</para>
|
||||
<citerefentry><refentrytitle>bw</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
file contains sequences of pixels.
|
||||
Each pixel is stored as one
|
||||
<emphasis remap="B">unsigned char</emphasis>
|
||||
<emphasis remap="B">unsigned char</emphasis>.
|
||||
The first pixel in a
|
||||
<emphasis remap="I">bw</emphasis>
|
||||
file is the lower left corner of the image.
|
||||
|
||||
@@ -27,19 +27,19 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Bw3-pix</emphasis>
|
||||
<para><command>bw3-pix</command>
|
||||
merges (combines the colors of)
|
||||
<citerefentry><refentrytitle>bw</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format files into a
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
file.
|
||||
<emphasis remap='I'>Bw3-pix</emphasis>
|
||||
<command>bw3-pix</command>
|
||||
reads the specified input files
|
||||
and writes stdout until all files have been exhausted.
|
||||
The first file goes into the red color plane, the second green,
|
||||
the third blue.</para>
|
||||
|
||||
<para><emphasis remap='I'>Bw3-pix</emphasis>
|
||||
<para><command>bw3-pix</command>
|
||||
accepts two special filename synonyms:
|
||||
``<emphasis remap='B'>-</emphasis>'',
|
||||
which stands for stdin, and
|
||||
|
||||
@@ -17,15 +17,14 @@
|
||||
<refsynopsisdiv xml:id='synopsis'>
|
||||
<cmdsynopsis>
|
||||
<command>bwrect</command>
|
||||
<arg choice='opt'>-h </arg>
|
||||
<arg choice='opt'>-s <replaceable>squaresize</replaceable></arg>
|
||||
<arg choice='opt'>-w <replaceable>width</replaceable></arg>
|
||||
<arg choice='opt'>-n <replaceable>height</replaceable></arg>
|
||||
<arg choice='opt'>-S <replaceable>out_squaresize</replaceable></arg>
|
||||
<arg choice='opt'>-W <replaceable>out_width</replaceable></arg>
|
||||
<arg choice='opt'>-N <replaceable>out_height</replaceable></arg>
|
||||
<arg choice='opt'>-x <replaceable>xorig</replaceable></arg>
|
||||
<arg choice='opt'>-y <replaceable>yorig</replaceable></arg>
|
||||
<arg choice='opt'>-S <replaceable>out_squaresize</replaceable></arg>
|
||||
<arg choice='opt'>-o <replaceable>out_file.bw</replaceable></arg>
|
||||
<arg choice='plain'><replaceable>file.bw</replaceable></arg>
|
||||
<arg choice='plain'><replaceable>></replaceable></arg>
|
||||
@@ -35,11 +34,11 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Bwrect</emphasis>
|
||||
<para><command>bwrect</command>
|
||||
extracts a rectangular region from a black and white
|
||||
<citerefentry><refentrytitle>bw</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format file. The default input image size is 512X512.
|
||||
The x-y coordinates of the origin (xorig=0, yorig=0 corresponds to the
|
||||
format file. The default input image size is 512x512.
|
||||
The x,y coordinates of the origin (the defaults xorig=0, yorig=0 correspond to the
|
||||
lower left corner) and the dimension of the output image are passed as
|
||||
command line arguments.</para>
|
||||
<para>This utility supports pipes and can read/write from/to them.
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Canonize</emphasis>
|
||||
<para><command>canonize</command>
|
||||
is a user agent for printing
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format files using a Canon(tm) CLC500 and the MDQS queuing system.
|
||||
@@ -95,8 +95,9 @@ pixels. By default the image is assumed to be 512 pixels wide.</para>
|
||||
<varlistentry>
|
||||
<term>-n fileheight</term>
|
||||
<listitem>
|
||||
<para>specifies the height of the image in pixels.
|
||||
By default the image is assumed to be 512 pixels wide.</para>
|
||||
<para>sets the image height to be
|
||||
<emphasis remap='I'>fileheight</emphasis>
|
||||
pixels. By default the image is assumed to be 512 pixels high.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
@@ -239,10 +240,10 @@ many images at once.</para>
|
||||
<refsect1 xml:id='diagnostics'><title>DIAGNOSTICS</title>
|
||||
<para>If the
|
||||
<option>-a</option>
|
||||
option is specified when the image is being redirected from the standard input
|
||||
option is specified when the image is being redirected from the standard input,
|
||||
<command>canonize</command>
|
||||
will abort.
|
||||
This avoids wasting paper printing an image using incorrect dimensions.</para>
|
||||
This avoids wasting paper (printing an image using incorrect dimensions).</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='author'><title>AUTHOR</title>
|
||||
|
||||
@@ -27,10 +27,8 @@
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para>Outputs a dpix file to pix (see
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
|
||||
format. If the
|
||||
<option>-v</option>
|
||||
option is given, a summary of plot command usage is given at the
|
||||
end of the file. Standard input is read if a file name is not supplied.</para>
|
||||
format.
|
||||
Standard input is read if a file name is not supplied.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='see_also'><title>SEE ALSO</title>
|
||||
|
||||
@@ -16,8 +16,8 @@
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fb-bw</command>
|
||||
<arg choice="opt" rep="norepeat">-hi </arg>
|
||||
<arg choice="opt" rep="norepeat">-Fframebuffer </arg>
|
||||
<arg choice="opt" rep="norepeat">-i </arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-X <replaceable>scr_xoff</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-Y <replaceable>scr_yoff</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-s <replaceable>squaresize</replaceable></arg>
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fb-bw</emphasis>
|
||||
<para><command>fb-bw</command>
|
||||
will take a region of a framebuffer display and save it as a black and
|
||||
white
|
||||
<citerefentry><refentrytitle>bw</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
@@ -46,17 +46,13 @@ by using the
|
||||
<option>-F</option>
|
||||
flag.</para>
|
||||
|
||||
<para>By default, the output file will be made size 512x512 pixels.
|
||||
Specifying the
|
||||
<option>-h</option>
|
||||
flag, changes the default to 1024x1024.
|
||||
<para>By default, the output file will be size 512x512 pixels.
|
||||
The
|
||||
<option>-s</option>
|
||||
flag will set both the file height and width to be the given size, while
|
||||
<option>-w</option>
|
||||
and
|
||||
<option>-n</option>
|
||||
sets them individually.</para>
|
||||
<option>-n</option> are used for setting them individually.</para>
|
||||
|
||||
<para>A first quadrant coordinate system is used (origin in lower left of
|
||||
screen), and the area saved is normally from this origin. The
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fb-cmap</emphasis>
|
||||
<para><command>fb-cmap</command>
|
||||
reads a colormap from a framebuffer. A
|
||||
<emphasis remap="I">colormap</emphasis>
|
||||
filename into which to write the data can be given,
|
||||
@@ -44,8 +44,8 @@ display size.</para>
|
||||
<para>The message "can't read colormap" occurs if the read failed.
|
||||
No output will be produced. This usually means that the
|
||||
currently selected framebuffer either does not have, or can
|
||||
not support, a colormap. This will usually be the case for
|
||||
example with a disk file "framebuffer."</para>
|
||||
not support, a colormap. This will usually be the case, for
|
||||
example, with a disk file "framebuffer".</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="see_also"><title>SEE ALSO</title>
|
||||
|
||||
@@ -13,19 +13,20 @@
|
||||
<refpurpose>copy an image on one frame buffer to another</refpurpose>
|
||||
</refnamediv>
|
||||
<!-- body begins here -->
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fb-fb</command>
|
||||
<arg choice="opt" rep="norepeat">-v </arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>output_framebuffer</replaceable></arg>
|
||||
<arg choice="plain" rep="norepeat"><replaceable>input_framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>output_framebuffer</replaceable></arg>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis sepchar=" " xml:id="synopsis">
|
||||
<command>fb-fb</command>
|
||||
<arg choice="opt" rep="norepeat">-v </arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>output_framebuffer</replaceable></arg>
|
||||
<sbr></sbr>
|
||||
<arg choice="opt" rep="norepeat">-v </arg>
|
||||
<arg choice="plain" rep="norepeat"><replaceable>input_framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>output_framebuffer</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fb-fb</emphasis>
|
||||
<para><command>fb-fb</command>
|
||||
copies an image from the input frame buffer onto the output frame
|
||||
buffer.
|
||||
The framebuffer may also be explicitly specified
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">fb-orle</emphasis>
|
||||
<para><command>fb-orle</command>
|
||||
saves a frame buffer image in a file, using the
|
||||
old University of Utah standard (Edition-2)
|
||||
Run-Length Encoded (RLE) format.
|
||||
@@ -46,7 +46,7 @@ be used.
|
||||
If
|
||||
<emphasis remap="I">file.rle</emphasis>
|
||||
is not specified, the encoded file is written to standard output.
|
||||
<emphasis remap="I">fb-orle</emphasis>
|
||||
<command>fb-orle</command>
|
||||
attempts to compress flat-colored areas
|
||||
as much as possible.
|
||||
This means that it is generally reasonable to save an entire
|
||||
@@ -57,18 +57,18 @@ The default action is to encode only data
|
||||
pixels and to save the background color separately, so that when the image
|
||||
is restored all non-image pixels will be set to the background pixel value
|
||||
stored in the RLE header.
|
||||
Images saved in this mode may be displayed normally, or in “overlay”
|
||||
Images saved in this mode may be displayed normally, or in overlay
|
||||
mode by the RLE decoder program (see
|
||||
<citerefentry><refentrytitle>orle-fb</refentrytitle><manvolnum>1</manvolnum></citerefentry>).
|
||||
Alternatively, the
|
||||
<option>-S</option>
|
||||
option may be used to RLE encode the background as well (recommended only
|
||||
option may be used to RLE-encode the background as well (recommended only
|
||||
if you don't have a flat background).</para>
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-C</option></term>
|
||||
<listitem>
|
||||
<para>Convert (“crunch”) an image with a non-standard color map so that the
|
||||
<para>Convert (crunch) an image with a non-standard color map so that the
|
||||
RLE file created will redisplay with a standard color map.
|
||||
Useful to preserve dramatic images created with weird color maps
|
||||
so that Gamma correction (for film) can then also be applied.
|
||||
@@ -81,7 +81,7 @@ not affect the displayed image.</para>
|
||||
<varlistentry>
|
||||
<term><option>-w</option></term>
|
||||
<listitem>
|
||||
<para>Convert the color image to black and white, and RLE encode that.
|
||||
<para>Convert the color image to black and white, and RLE-encode that.
|
||||
The red, green, and blue components of each
|
||||
pixel are combined via the NTSC transform to get an intensity value (Y) which
|
||||
is saved. A more versatile tool for this is
|
||||
@@ -92,7 +92,7 @@ is saved. A more versatile tool for this is
|
||||
<term><option>-S</option></term>
|
||||
<listitem>
|
||||
<para>Save all data in RLE format,
|
||||
irrespective of whether it is background or not (“straight box save”).
|
||||
irrespective of whether it is background or not (straight box save).
|
||||
It is not possible to
|
||||
restore a file saved with
|
||||
<option>-S</option>
|
||||
@@ -143,7 +143,7 @@ on its standard error as it proceeds through encoding the image.</para>
|
||||
<varlistentry>
|
||||
<term><option>-H</option></term>
|
||||
<listitem>
|
||||
<para>“hi-res” flag. Set both the height and width of the framebuffer
|
||||
<para>hi-res flag. Set both the height and width of the framebuffer
|
||||
to 1024. The default is 512x512.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -152,7 +152,7 @@ to 1024. The default is 512x512.</para>
|
||||
|
||||
<refsection xml:id="example"><title>EXAMPLE</title>
|
||||
<literallayout remap="RS" class="normal">
|
||||
<emphasis remap="I">fb-orle -h tank.rle</emphasis>
|
||||
<emphasis remap="I">fb-orle -H tank.rle</emphasis>
|
||||
</literallayout> <!-- remap='RE' -->
|
||||
|
||||
</refsection>
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fb-pix</command>
|
||||
<arg choice="opt" rep="norepeat">-hic </arg>
|
||||
<arg choice="opt" rep="norepeat">-ic </arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-s <replaceable>squaresize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-w <replaceable>width</replaceable></arg>
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fb-pix</emphasis>
|
||||
<para><command>fb-pix</command>
|
||||
will take a region of a framebuffer display and save it as a color
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format file.
|
||||
@@ -46,16 +46,13 @@ flag.</para>
|
||||
<para>By default, the output
|
||||
<emphasis remap="I">pix</emphasis>
|
||||
file, and the requested framebuffer size, is assumed to be 512x512 pixels.
|
||||
Specifying the
|
||||
<option>-h</option>
|
||||
flag, changes the default to 1024x1024.
|
||||
The
|
||||
<option>-s</option>
|
||||
flag will set both the file height and width to be the given size, while
|
||||
<option>-w</option>
|
||||
and
|
||||
<option>-n</option>
|
||||
sets them individually.</para>
|
||||
are used for setting them individually.</para>
|
||||
|
||||
<para>A first quadrant coordinate system is used (origin in lower left of
|
||||
screen), and the area saved is normally from this origin.
|
||||
@@ -68,7 +65,7 @@ corner of the screen).</para>
|
||||
<para>The
|
||||
<option>-c</option>
|
||||
flag specifies that the color map in the frame buffer should
|
||||
be applied to the pixel values (“crunched”) before they are written to the
|
||||
be applied to the pixel values (crunched) before they are written to the
|
||||
output file.</para>
|
||||
</refsection>
|
||||
|
||||
|
||||
@@ -17,18 +17,19 @@
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fb-png</command>
|
||||
<arg choice="opt" rep="norepeat">-ic </arg>
|
||||
<arg choice="opt" rep="norepeat">-ggamma </arg>
|
||||
<arg choice="opt" rep="norepeat">-Fframebuffer </arg>
|
||||
<arg choice="opt" rep="norepeat">-ssquaresize </arg>
|
||||
<arg choice="opt" rep="norepeat">-wwidth </arg>
|
||||
<arg choice="opt" rep="norepeat">-nheight </arg>
|
||||
<arg choice="opt" rep="norepeat">-# <replaceable>nbytes/pixel</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-g <replaceable>gamma</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-s <replaceable>squaresize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-w <replaceable>width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-n <replaceable>height</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>file.png</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fb-png</emphasis>
|
||||
<para><command>fb-png</command>
|
||||
will take a region of a framebuffer display and save it as a color
|
||||
<emphasis remap="I">png</emphasis>
|
||||
format file.
|
||||
@@ -53,7 +54,7 @@ flag will set both the file height and width to be the given size, while
|
||||
<option>-w</option>
|
||||
and
|
||||
<option>-n</option>
|
||||
sets them individually.</para>
|
||||
are used for setting them individually.</para>
|
||||
|
||||
<para>A first quadrant coordinate system is used (origin in lower left of
|
||||
screen), and the area saved is normally from this origin.
|
||||
@@ -63,14 +64,19 @@ flag switches to a fourth quadrant system, both in the storage order as
|
||||
well as the origin offset coordinates (i.e. origin is now the upper left
|
||||
corner of the screen).</para>
|
||||
|
||||
<para>The
|
||||
<option>-# </option><replaceable>nbytes/pixel</replaceable>
|
||||
flag specifies the number of bytes per pixel. The only values accepted
|
||||
are 1 and 3.</para>
|
||||
|
||||
<para>The
|
||||
<option>-c</option>
|
||||
flag specifies that the color map in the frame buffer should
|
||||
be applied to the pixel values (“crunched”) before they are written to the
|
||||
be applied to the pixel values (crunched) before they are written to the
|
||||
output file.</para>
|
||||
|
||||
<para>The
|
||||
<option>-g gamma</option>
|
||||
<option>-g </option><replaceable>gamma</replaceable>
|
||||
flag sets the specified gamma correction value into the created PNG
|
||||
file. A value of 0.6 is a close approximation of PC display monitors.
|
||||
A negative gamma value disables writing a gAMA chunk out entirely (and
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">fb-rle</emphasis> saves an image from a
|
||||
<para><command>fb-rle</command> saves an image from a
|
||||
frame buffer in the University of Utah standard (Edition-3, or
|
||||
"Utah Raster Toolkit") Run-Length Encoded (RLE) format file
|
||||
(these files can be displayed with
|
||||
@@ -146,7 +146,7 @@
|
||||
<term><option>-X</option> <replaceable>scr_xoff</replaceable></term>
|
||||
<listitem>
|
||||
<para>Specify a screen X offset, which will offset the saved
|
||||
area onto the screen by the given amount. (i.e.,
|
||||
area onto the screen by the given amount. E.g.,
|
||||
<option>-X</option> <literal>10</literal> would place (0,
|
||||
10) on the screen in the RLE image rectangle coordinate
|
||||
(0, 0).</para>
|
||||
@@ -178,11 +178,9 @@
|
||||
|
||||
<refsection xml:id="examples"><title>EXAMPLES</title>
|
||||
<blockquote remap="RS">
|
||||
<para>fb-rle truck.rle
|
||||
<!-- .br -->
|
||||
fb-rle -C 0/255/0 >car.rle
|
||||
<!-- .br -->
|
||||
fb-rle -h -s 512 >lowerleft.rle
|
||||
<para>fb-rle truck.rle</para>
|
||||
<para>fb-rle -C 0/255/0 >car.rle</para>
|
||||
<para>fb-rle -s 512 >lowerleft.rle
|
||||
</para></blockquote> <!-- remap='RE' -->
|
||||
</refsection>
|
||||
|
||||
|
||||
@@ -32,17 +32,17 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbanim</emphasis>
|
||||
<para><command>fbanim</command>
|
||||
assumes that the current framebuffer (determined by environment variable
|
||||
FB_FILE) contains a collection of small square
|
||||
images “tiled” together by
|
||||
images tiled together by
|
||||
<citerefentry><refentrytitle>pixtile</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
This permits a limited sequence of low resolution images to be viewed at
|
||||
various speeds, to create the sensation of motion, or to highlight
|
||||
the differences between the frames.
|
||||
The typical use of this program is to animate sequences of 64x64 or 128x128
|
||||
tiles generated by animation studies.
|
||||
It can also be used to create “blink comparisons” between a small number
|
||||
It can also be used to create blink comparisons between a small number
|
||||
of large images.</para>
|
||||
|
||||
<para>The width of each tile is specified by the
|
||||
@@ -50,9 +50,9 @@ of large images.</para>
|
||||
argument, and the number of tiles is specified by the
|
||||
<emphasis remap="I">nframes</emphasis>
|
||||
argument.
|
||||
The optional argument
|
||||
The optional
|
||||
<emphasis remap="I">fps</emphasis>
|
||||
specifies the number of frames (tiles) per second to be displayed.
|
||||
argument specifies the number of frames (tiles) per second to be displayed.
|
||||
24 fps is the standard movie rate, 30 the standard video rate.
|
||||
Slower rates may also be used. The default is 8 frames/second.</para>
|
||||
|
||||
@@ -68,7 +68,7 @@ the screen (see
|
||||
sequence, i.e., the first tile immediately follows the last one.
|
||||
If this is not the case, the
|
||||
<option>-r</option>
|
||||
flag will cause the sequence to “rock” from beginning to end to beginning,
|
||||
flag will cause the sequence to rock from beginning to end to beginning,
|
||||
which is sometimes more pleasing.</para>
|
||||
|
||||
<para>The
|
||||
@@ -82,7 +82,7 @@ as they are passed to fb_window(), for debugging purposes.</para>
|
||||
program repeats for 100 passes. When creating demonstration scripts,
|
||||
it may be desirable to specify the number of passes through the animation.
|
||||
The
|
||||
<option>-p </option><replaceable>npasses</replaceable>
|
||||
<option>-p </option><replaceable>npasses</replaceable>
|
||||
option is used to indicate this.</para>
|
||||
|
||||
<para>For compatibility with old animation images which were generated by
|
||||
|
||||
@@ -72,15 +72,15 @@ flag.</para>
|
||||
<para>Ordinarily, the requested framebuffer size is the device default.</para>
|
||||
|
||||
<para>The
|
||||
<option>-W </option><replaceable>scr_width</replaceable>
|
||||
flag specifies the width of each output scanline, in pixels.</para>
|
||||
<option>-W </option><replaceable>scr_width</replaceable>
|
||||
option specifies the width of each output scanline, in pixels.</para>
|
||||
|
||||
<para>The
|
||||
<option>-N </option><replaceable>scr_height</replaceable>
|
||||
flag specifies the desired height in scanlines of the display device.</para>
|
||||
<option>-N </option><replaceable>scr_height</replaceable>
|
||||
option specifies the desired height in scanlines of the display device.</para>
|
||||
|
||||
<para><option>-S </option><replaceable>squarescrsize</replaceable>
|
||||
set both the height and width to the size given.</para>
|
||||
<para><option>-S </option><replaceable>squarescrsize</replaceable>
|
||||
sets both the height and width to the size given.</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="inspirations"><title>INSPIRATIONS</title>
|
||||
|
||||
@@ -19,9 +19,7 @@
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-c </arg></arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat"><replaceable>red</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>green</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>blue</replaceable></arg></arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fbclear</command>
|
||||
<sbr></sbr>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-c </arg></arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>gray_value</replaceable></arg>
|
||||
@@ -30,7 +28,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbclear</emphasis>
|
||||
<para><command>fbclear</command>
|
||||
is used to erase a frame buffer using whatever method is efficient for the
|
||||
device being accessed.
|
||||
By default, the selected color will be flooded into the color planes.
|
||||
@@ -59,11 +57,17 @@ If this variable is not set, the default device for your system will
|
||||
be used.</para>
|
||||
|
||||
<para>In addition to those flags shown above, the
|
||||
<option>-W </option><replaceable>width</replaceable>
|
||||
<option>-N </option><replaceable>height</replaceable>
|
||||
<option>-W</option>
|
||||
(or <option>-w</option>)
|
||||
<replaceable>width</replaceable>,
|
||||
<option>-N</option>
|
||||
(or <option>-n</option>)
|
||||
<replaceable>height</replaceable>,
|
||||
and
|
||||
<option>-S </option><replaceable>square_size</replaceable>
|
||||
flags can be used to set the size of the output frame buffer.</para>
|
||||
<option>-S</option>
|
||||
(or <option>-s</option>)
|
||||
<replaceable>square_size</replaceable>
|
||||
options can be used to set the size of the output frame buffer.</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="see_also"><title>SEE ALSO</title>
|
||||
|
||||
@@ -16,50 +16,52 @@
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fbcmap</command>
|
||||
<arg choice="opt" rep="norepeat">-h </arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">- </arg><arg choice="opt" rep="norepeat"><replaceable>sS</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>squarescrsize</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">- </arg><arg choice="opt" rep="norepeat"><replaceable>wW</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>scr_width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">- </arg><arg choice="opt" rep="norepeat"><replaceable>nN</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>scr_height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-w|W <replaceable>scr_width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-n|N <replaceable>scr_height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-s|S <replaceable>squarescrsize</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>map_number</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbcmap</emphasis>
|
||||
is used to change the color map of a frame buffer.
|
||||
The environment
|
||||
variable
|
||||
<envar>FB_FILE</envar>
|
||||
is used to select the display device (see
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>).
|
||||
If this variable is not set, the default device for your system will
|
||||
be used.</para>
|
||||
|
||||
<para><command>fbcmap</command>
|
||||
is used to change the color map of a frame buffer.</para>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-F</option> <replaceable>framebuffer</replaceable></term>
|
||||
<listitem>
|
||||
<para>This option specifies which framebuffer the image is
|
||||
to be saved from. If not given, the environment variable
|
||||
<acronym/><emphasis remap="B">FB_FILE</emphasis> is used
|
||||
to select the display device (see
|
||||
<emphasis remap="I">brlcad(1)</emphasis>). If
|
||||
<acronym/><emphasis remap="B">FB_FILE</emphasis> has not
|
||||
been set, the default device for your system will be
|
||||
used.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<para>The requested framebuffer size will be the default size for the
|
||||
selected device (often 512x512 pixels).
|
||||
Specifying the
|
||||
<option>-h</option>
|
||||
flag changes the size to 1024x1024.</para>
|
||||
</para>
|
||||
|
||||
<para>The
|
||||
<option>-w </option><replaceable>scr_width</replaceable>
|
||||
and
|
||||
<option>-W </option><replaceable>scr_width</replaceable>
|
||||
flags specifies the width of each scanline for the display device,
|
||||
<option>-w</option>
|
||||
(or <option>-W</option>) <replaceable>scr_width</replaceable>
|
||||
option specifies the width of each scanline for the display device,
|
||||
in pixels.</para>
|
||||
|
||||
<para>The
|
||||
<option>-n </option><replaceable>scr_height</replaceable>
|
||||
and
|
||||
<option>-N </option><replaceable>scr_height</replaceable>
|
||||
flags specifies the height of each scanline for the display device.</para>
|
||||
<option>-n</option>
|
||||
(or <option>-N</option>) <replaceable>scr_height</replaceable>
|
||||
option specifies the height of each scanline for the display device.</para>
|
||||
|
||||
<para><option>-s </option><replaceable>squarescrsize</replaceable>
|
||||
and
|
||||
<option>-S </option><replaceable>squarescrsize</replaceable>
|
||||
set both the height and width to the size given.
|
||||
<para>The
|
||||
<option>-s</option>
|
||||
(or <option>-S</option>) <replaceable>squarescrsize</replaceable>
|
||||
option sets both the height and width to the size given.
|
||||
This size distinction is important only for devices like the Adage
|
||||
framebuffers which have different operating modes based on the
|
||||
display size.</para>
|
||||
|
||||
@@ -18,13 +18,13 @@
|
||||
<command>fbcmrot</command>
|
||||
<arg choice="opt" rep="norepeat">-H </arg>
|
||||
<arg choice="opt" rep="norepeat">-i <replaceable>increment</replaceable></arg>
|
||||
<arg choice="plain" rep="norepeat"><replaceable>steps_per_second</replaceable></arg>
|
||||
<arg choice="plain" rep="norepeat"><replaceable>frames_per_second</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbcmrot</emphasis>
|
||||
<para><command>fbcmrot</command>
|
||||
rotates the color map, cycling each color map entry through all of the
|
||||
color map positions.
|
||||
The
|
||||
@@ -40,7 +40,7 @@ of zero causes the program to make one step and then exit.</para>
|
||||
<para>Each step shifts the colormap one position toward smaller
|
||||
values (with a linear colormap this would cause displayed pixels
|
||||
to get brighter). The
|
||||
<option>-i </option>increment
|
||||
<option>-i </option><replaceable>increment</replaceable>
|
||||
option allows a shift of more than one position. If
|
||||
<emphasis remap="I">increment</emphasis>
|
||||
is negative, the colormap will be shifted the opposite
|
||||
|
||||
@@ -16,42 +16,46 @@
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fbcolor</command>
|
||||
<arg choice="opt" rep="norepeat">-h </arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-S <replaceable>screen</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>squaresize</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-W <replaceable>screen</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-N <replaceable>screen</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-s|S <replaceable>screen_squaresize</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-w|W <replaceable>screen_width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-n|N <replaceable>screen_height</replaceable></arg></arg>
|
||||
<sbr/>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbcolor</emphasis>
|
||||
<para><command>fbcolor</command>
|
||||
is an interactive color picking facility.
|
||||
It allows you to pick and display colors, by varying parameters in
|
||||
either RGB (red, green, blue)
|
||||
or HSI (hue, saturation, intensity) space.
|
||||
The environment
|
||||
variable
|
||||
<envar>FB_FILE</envar>
|
||||
is used to select the display device (see
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>).
|
||||
If this variable is not set, the default device for your system will
|
||||
be used.
|
||||
If the
|
||||
<option>-h</option>
|
||||
option is used,
|
||||
1024x1024 resolution is used.
|
||||
Alternatively, the
|
||||
or HSI (hue, saturation, intensity) space.</para>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-F</option> <replaceable>framebuffer</replaceable></term>
|
||||
<listitem>
|
||||
<para>This option specifies which framebuffer the image is
|
||||
to be saved from. If not given, the environment variable
|
||||
<acronym/><emphasis remap="B">FB_FILE</emphasis> is used
|
||||
to select the display device (see
|
||||
<emphasis remap="I">brlcad(1)</emphasis>). If
|
||||
<acronym/><emphasis remap="B">FB_FILE</emphasis> has not
|
||||
been set, the default device for your system will be
|
||||
used.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<para>The
|
||||
<option>-SWN</option>
|
||||
options can all be used in the normal way to specify the size of
|
||||
(or <option>-swn</option>) options can all be used in the normal way to specify the size of
|
||||
the screen (see
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>).</para>
|
||||
|
||||
<para><emphasis remap="I">Fbcolor</emphasis>
|
||||
<para><command>fbcolor</command>
|
||||
draws a set of color bars in the lower left corner of the display,
|
||||
sets the remainder of the display to the current color,
|
||||
then starts reading standard in for color editing commands.
|
||||
then starts reading standard input for color editing commands.
|
||||
As you change the various parameters which specify
|
||||
the color, the color bars grow and shrink to show the relative red, green
|
||||
and blue intensities.</para>
|
||||
@@ -62,7 +66,7 @@ displays the current RGB and HSI values on your terminal. This
|
||||
allows you to record the RGB or HSI values of the colors you
|
||||
select for later use.</para>
|
||||
|
||||
<para><emphasis remap="I">Fbcolor</emphasis>
|
||||
<para><command>fbcolor</command>
|
||||
recognizes two main sets of commands; those which select which parameter to
|
||||
edit, and those which vary the value of the selected parameter.
|
||||
``<emphasis remap="B">r</emphasis>'',
|
||||
|
||||
@@ -17,44 +17,48 @@
|
||||
<refsynopsisdiv xml:id='synopsis'>
|
||||
<cmdsynopsis>
|
||||
<command>fbed</command>
|
||||
<arg choice='opt'>-ph </arg>
|
||||
<arg choice='opt'>-pH </arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Fbed</emphasis>
|
||||
<para><command>fbed</command>
|
||||
is an editor for frame buffer images, designed to facilitate the
|
||||
manipulation of existing images for the preparation of presentation quality
|
||||
graphics. Although it does have the potential to generate fairly complex
|
||||
images, it is meant mainly for touching up existing images; adding titles,
|
||||
captions or other labels; cutting and pasting of one or more images; and
|
||||
reducing images or portions thereof.
|
||||
<emphasis remap='I'>Fbed</emphasis>
|
||||
<command>fbed</command>
|
||||
uses the frame buffer library
|
||||
<citerefentry><refentrytitle>libfb</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and therefore is available on all graphics devices which are supported
|
||||
by this package. On start up, the program always attempts to open the
|
||||
default frame buffer. This device is specified by the frame buffer library,
|
||||
and is configurable on a per system basis. Often the user will want to
|
||||
over ride this default by setting the environment variable
|
||||
override this default by setting the environment variable
|
||||
<envar>FB_FILE</envar>
|
||||
(see
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>).
|
||||
The
|
||||
<option>-h</option>
|
||||
<option>-H</option>
|
||||
option is for editing
|
||||
1024x1024 or high resolution
|
||||
<emphasis remap='SM'>(HIRES)</emphasis>
|
||||
images; the default is low resolution, 512x512
|
||||
<emphasis remap='SM'>(LORES).</emphasis>
|
||||
<emphasis remap='SM'>(LORES)</emphasis>.
|
||||
The frame buffer's state can be toggled back and forth between
|
||||
<acronym>HIRES</acronym>
|
||||
and
|
||||
<acronym>LORES</acronym>
|
||||
at any time during execution of the program.</para>
|
||||
|
||||
<para><emphasis remap='I'>Fbed</emphasis>
|
||||
<para>
|
||||
The <option>-p</option> option turns on the "pad" flag.
|
||||
</para>
|
||||
|
||||
<para><command>fbed</command>
|
||||
allows function-to-key bindings and macro definition facilities
|
||||
in a fashion similar to some of the more versatile EMACS-style
|
||||
screen editors, such as
|
||||
@@ -64,8 +68,8 @@ screen editors, such as
|
||||
<para><emphasis remap='B'>Cursor Movement</emphasis></para>
|
||||
|
||||
<para>When
|
||||
<emphasis remap='I'>fbed</emphasis>
|
||||
is running on a graphics device a cursor will appear on the screen.
|
||||
<command>fbed</command>
|
||||
is running on a graphics device, a cursor will appear on the screen.
|
||||
The position of the cursor points to the
|
||||
<emphasis remap='I'>current pixel</emphasis><literal>.</literal></para>
|
||||
|
||||
@@ -131,7 +135,7 @@ indicating to the user that an operation is on-going.</para>
|
||||
<para><emphasis remap='B'>Modes of Input</emphasis></para>
|
||||
|
||||
<para>The user interface consists of a list of provided commands, referred to as
|
||||
<emphasis remap='I'>functions</emphasis>
|
||||
<emphasis remap='I'>functions</emphasis>;
|
||||
and user-defined commands, called
|
||||
<emphasis remap='I'>macros</emphasis>.
|
||||
In general, every key-stroke will immediately be processed (this is often
|
||||
@@ -620,11 +624,11 @@ Here is the standard listing:</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='hints'><title>HINTS</title>
|
||||
<para>This program may require a little practice,
|
||||
<para>This program may require a little practice;
|
||||
be sure to save a copy of the input files until you are confident.
|
||||
The first time using the program you should start out by listing the menu
|
||||
and finding the command for saving your image and use it if you don't
|
||||
already have a copy.</para>
|
||||
If you are using the program for the first time, you should start by
|
||||
listing the menu, finding the command for saving your image, and using
|
||||
such command if you don't already have a copy.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='files'><title>FILES</title>
|
||||
|
||||
@@ -17,36 +17,33 @@
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fbfade</command>
|
||||
<arg choice="opt" rep="norepeat">-H </arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-f </arg><arg choice="plain" rep="norepeat"><replaceable>input</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>image</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>name</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-s </arg><arg choice="plain" rep="norepeat"><replaceable>input</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>square</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>size</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-w </arg><arg choice="plain" rep="norepeat"><replaceable>input</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-f </arg><arg choice="plain" rep="norepeat"><replaceable>input_image_name</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-s </arg><arg choice="plain" rep="norepeat"><replaceable>input_square_size</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-w </arg><arg choice="plain" rep="norepeat"><replaceable>input_width</replaceable></arg></arg>
|
||||
<sbr/>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-n </arg><arg choice="plain" rep="norepeat"><replaceable>input</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-S </arg><arg choice="plain" rep="norepeat"><replaceable>output</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>square</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>size</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-W </arg><arg choice="plain" rep="norepeat"><replaceable>output</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-N </arg><arg choice="plain" rep="norepeat"><replaceable>output</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-n </arg><arg choice="plain" rep="norepeat"><replaceable>input_height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-S </arg><arg choice="plain" rep="norepeat"><replaceable>output_square_size</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-W </arg><arg choice="plain" rep="norepeat"><replaceable>output_width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-N </arg><arg choice="plain" rep="norepeat"><replaceable>output_height</replaceable></arg></arg>
|
||||
<sbr/>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="opt" rep="norepeat">-F </arg><arg choice="plain" rep="norepeat"><replaceable>output</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>frame</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>buffer</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>name</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="opt" rep="norepeat">-F </arg><arg choice="plain" rep="norepeat"><replaceable>output_frame_buffer_name</replaceable></arg></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<!-- .lg 0 IGNORED -->
|
||||
<para>fbfade
|
||||
<!-- .lg IGNORED -->
|
||||
<para><command>fbfade</command>
|
||||
gradually displays an image on a frame buffer,
|
||||
one randomly chosen pixel at a time.</para>
|
||||
|
||||
<refsection xml:id="options"><title>Options</title>
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term>-H</term>
|
||||
<term>-H</term>
|
||||
<listitem>
|
||||
<!-- .lg IGNORED -->
|
||||
<para>(“high resolution”)Assumes 1024 by 1024 pixels for default input image size
|
||||
<para>(high resolution) Assumes 1024 by 1024 pixels for default input image size
|
||||
instead of 512 by 512.
|
||||
Explicitly specified sizes override the default,
|
||||
Explicitly-specified sizes override the default,
|
||||
and if actual input image size is smaller than requested,
|
||||
the actual size will be used.
|
||||
If output frame buffer size is not specified,
|
||||
@@ -57,7 +54,7 @@ Actual sizes depend on details of specific frame buffers.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-f <emphasis remap="I">input image name</emphasis></term>
|
||||
<term>-f <emphasis remap="I">input_image_name</emphasis></term>
|
||||
<listitem>
|
||||
<para>Inputs the image to be displayed
|
||||
from the specified frame buffer or <citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry> file,
|
||||
@@ -67,60 +64,54 @@ on the output frame buffer).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-s<emphasis remap="P->I"> input square size</emphasis></term>
|
||||
<term>-s<emphasis remap="P->I"> input_square_size</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies input image width and height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-w<emphasis remap="P->I"> input width</emphasis></term>
|
||||
<term>-w<emphasis remap="P->I"> input_width</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies input image width.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-n<emphasis remap="P->I"> input height</emphasis></term>
|
||||
<term>-n<emphasis remap="P->I"> input_height</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies input image height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-S<emphasis remap="P->I"> output square size</emphasis></term>
|
||||
<term>-S<emphasis remap="P->I"> output_square_size</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies output frame buffer width and height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-W<emphasis remap="P->I"> output width</emphasis></term>
|
||||
<term>-W<emphasis remap="P->I"> output_width</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies output frame buffer width.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-N<emphasis remap="P->I"> output height</emphasis></term>
|
||||
<term>-N<emphasis remap="P->I"> output_height</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies output frame buffer height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-F<emphasis remap="P->I"> output frame buffer name</emphasis></term>
|
||||
<term>-F<emphasis remap="P->I"> output_frame_buffer_name</emphasis></term>
|
||||
<listitem>
|
||||
<para>Outputs to the specified frame buffer
|
||||
instead of the one specified by the
|
||||
<!-- .lg 0 IGNORED -->
|
||||
FB_FILE<emphasis remap="P->I">
|
||||
<!-- .lg IGNORED -->
|
||||
<emphasis remap="P->I">FB_FILE</emphasis>
|
||||
environment variable
|
||||
(or the default, if
|
||||
<!-- .lg 0 IGNORED -->
|
||||
</emphasis>FB_FILE<emphasis remap="P->I">
|
||||
<!-- .lg IGNORED -->
|
||||
<emphasis remap="P->I">FB_FILE</emphasis>
|
||||
is not set).
|
||||
If this is the last option specified, the
|
||||
<!-- .lg 0 IGNORED -->
|
||||
</emphasis>-F<emphasis remap="P->I">
|
||||
<!-- .lg IGNORED -->
|
||||
is optional.</emphasis></para>
|
||||
<emphasis remap="P->I">-F</emphasis>
|
||||
is optional.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -128,26 +119,18 @@ is optional.</emphasis></para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="caveat"><title>CAVEAT</title>
|
||||
<!-- .lg 0 IGNORED -->
|
||||
<para>fbfade<emphasis remap="P->I">
|
||||
<!-- .lg IGNORED -->
|
||||
works best in conjunction with a frame buffer having very fast access to pixels.</emphasis></para>
|
||||
<para><command>fbfade</command>
|
||||
works best in conjunction with a frame buffer having very fast access to pixels.</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="example"><title>EXAMPLE</title>
|
||||
<para>The following shell script can be used to produce a slick “slide show”:</para>
|
||||
<para>The following shell script can be used to produce a slick slide show:</para>
|
||||
<blockquote remap="RS">
|
||||
<para>fbclear
|
||||
<!-- .br -->
|
||||
for i in *.pix
|
||||
<!-- .br -->
|
||||
do fbfade -f $i
|
||||
<!-- .br -->
|
||||
sleep 15
|
||||
<!-- .br -->
|
||||
done
|
||||
<!-- .br -->
|
||||
fbfade</para></blockquote> <!-- remap='RE' -->
|
||||
<para>fbclear</para>
|
||||
<para>for i in *.pix</para>
|
||||
<para>do fbfade -f $i</para>
|
||||
<para>sleep 15</para>
|
||||
<para>done fbfade</para></blockquote> <!-- remap='RE' -->
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="see_also"><title>SEE ALSO</title>
|
||||
@@ -159,7 +142,7 @@ fbfade</para></blockquote> <!-- remap='RE' -->
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="authors"><title>AUTHORS</title>
|
||||
<para>Douglas A. Gwyn, BRL/VLD-VMB
|
||||
<para>Douglas A. Gwyn, BRL/VLD-VMB;
|
||||
<!-- .br -->
|
||||
Gary S. Moss, BRL/VLD-VMB</para>
|
||||
|
||||
|
||||
@@ -17,15 +17,15 @@
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fbframe</command>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-w <replaceable>frame_width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-n <replaceable>frame_height</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-s <replaceable>squareframesize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-w|W <replaceable>frame_width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-n|N <replaceable>frame_height</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-s|S <replaceable>squareframesize</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbframe</emphasis>
|
||||
<para><command>fbframe</command>
|
||||
places a colored frame around the edge pixels of a framebuffer.
|
||||
It is mostly for purposes of framebuffer alignment.
|
||||
The
|
||||
@@ -48,19 +48,20 @@ above the red line.</para>
|
||||
|
||||
<para>By default, the dimensions of the frame will be taken from the framebuffer
|
||||
used. Alternatively, one or more of the options
|
||||
<option> -s -w -n</option>
|
||||
<option>-s</option>, <option>-w</option>, <option>-n</option>
|
||||
(or <option>-S</option>, <option>-W</option>, <option>-N</option>)
|
||||
may be used to set the dimensions of the frame drawn.</para>
|
||||
|
||||
<para>The
|
||||
options
|
||||
<option>-w </option><replaceable>frame_width</replaceable>
|
||||
<option>-w </option> (or <option>-W</option>) <replaceable>frame_width</replaceable>
|
||||
and
|
||||
<option>-n </option><replaceable>frame_height</replaceable>
|
||||
<option>-n </option> (or <option>-N</option>) <replaceable>frame_height</replaceable>
|
||||
are used to
|
||||
specify the width and height in scanlines of the frame on the framebuffer
|
||||
specify the width (in pixels) and height (in scanlines) of the frame on the framebuffer
|
||||
respectively.
|
||||
The
|
||||
<option>-s </option><replaceable>squareframesize</replaceable>
|
||||
<option>-s </option> (or <option>-S</option>) <replaceable>squareframesize</replaceable>
|
||||
option specifies both the height and width of the frame to be drawn.</para>
|
||||
|
||||
</refsection>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
<arg choice="opt" rep="norepeat">-H </arg>
|
||||
<arg choice="opt" rep="norepeat">-o </arg>
|
||||
<arg choice="opt" rep="norepeat">-i </arg>
|
||||
<arg choice="opt" rep="norepeat">-Fframebuffer </arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="plain" rep="norepeat"><replaceable>val</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat"><replaceable>gval</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>bval</replaceable></arg></arg>
|
||||
</cmdsynopsis>
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbgamma</emphasis>
|
||||
<para><command>fbgamma</command>
|
||||
loads a gamma correcting colormap into a framebuffer.
|
||||
If a single value is given, that number is used for
|
||||
all three color channels. If three values are specified,
|
||||
@@ -42,7 +42,7 @@ saturate the colors. An uncorrected monitor is usually too
|
||||
saturated.</para>
|
||||
|
||||
<para>Note that since this program is intended for gamma
|
||||
<emphasis remap="I">correction</emphasis>
|
||||
<emphasis remap="I">correction</emphasis>,
|
||||
the exponent to which pixel values are raised is the inverse
|
||||
of the given value. To linearize a display then, the given
|
||||
value will be equal to the gamma of the display (typically
|
||||
@@ -68,10 +68,10 @@ flag, the size is changed to 1024x1024.
|
||||
This size distinction is important for devices like the Adage
|
||||
framebuffers which have different operating modes based on the
|
||||
display size.
|
||||
In general, the
|
||||
In general,
|
||||
<command>fbgamma</command>
|
||||
manipulates the RGB color maps in the graphics hardware, and
|
||||
has effect on the entire screen, not just the portion containing
|
||||
has an effect on the entire screen, not just the portion containing
|
||||
the current framebuffer display.
|
||||
As such, there is no need to match the display size on the
|
||||
command line.</para>
|
||||
@@ -110,8 +110,8 @@ the inverse gamma power.</para>
|
||||
|
||||
<para>It should be noted that getting the gamma values "right" involves
|
||||
careful calibration and measurement or your display device.
|
||||
The values are likely to be different for each color channel,
|
||||
will depend of the brightness setting, etc. (increasing the monitor
|
||||
The values are likely to be different for each color channel, and
|
||||
will depend on the brightness setting, etc. (increasing the monitor
|
||||
brightness often lowers the gammas, due to overdriving the high
|
||||
end of the display). Also note that getting the correct colors
|
||||
from a display requires knowledge of the phosphor chromaticities.</para>
|
||||
@@ -120,7 +120,7 @@ from a display requires knowledge of the phosphor chromaticities.</para>
|
||||
into a display or saving it as eight bit linear data. This is
|
||||
because the response of the human visual system to brightness
|
||||
is also exponential in nature, and thus having "smaller steps"
|
||||
and the dark end of the display and larger ones near full bright
|
||||
at the dark end of the display, and larger ones near full bright
|
||||
(as an uncorrected display will have), fits this response well.
|
||||
Gamma correction via the colormap cannot exploit this.</para>
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fblabel</emphasis>
|
||||
<para><command>fblabel</command>
|
||||
writes a text string to
|
||||
the image on the currently selected framebuffer.
|
||||
The text string will be filtered to the image currently
|
||||
@@ -42,7 +42,7 @@ to determine where to position the text string.
|
||||
The lower left corner of the text string starts
|
||||
displaying at the x and y position given.
|
||||
The environment variable FB_FILE specifies
|
||||
the current framebuffer, see
|
||||
the current framebuffer; see
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
Alternatively, the framebuffer may be explicitly specified
|
||||
by using the
|
||||
@@ -64,29 +64,32 @@ without clearing the screen.</para>
|
||||
|
||||
<para>The
|
||||
<option>-a</option>
|
||||
The flag causes the text not to be filtered against the frame buffer image.</para>
|
||||
flag causes the text not to be filtered against the frame buffer image.</para>
|
||||
|
||||
<para>The
|
||||
<option>-C r/g/b</option>
|
||||
specifies red, green, and blue rgb values [0..255] for the text.
|
||||
<option>-C </option><replaceable>r/g/b</replaceable>
|
||||
option specifies red, green, and blue (r/g/b) values [0..255] for the text.
|
||||
The default color is white.</para>
|
||||
|
||||
<para>The
|
||||
<option>-f fontname</option>
|
||||
flag will change the current default
|
||||
<option>-f </option><replaceable>fontname</replaceable>
|
||||
option will change the current default
|
||||
font from nonie.r.12 to "/usr/lib/vfont/fontname".</para>
|
||||
|
||||
<para>The
|
||||
<option>-S</option>
|
||||
(or <option>-s</option>)
|
||||
flag sets the width and the height to the same value; the
|
||||
<option>-W</option>
|
||||
(or <option>-w</option>)
|
||||
and
|
||||
<option>-N</option>
|
||||
flags set them individually..</para>
|
||||
(or <option>-n</option>)
|
||||
flags are used for setting them individually.</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="fonts"><title>FONTS</title>
|
||||
<para><emphasis remap="I">Fblabel</emphasis>
|
||||
<para><command>fblabel</command>
|
||||
expects the Berkeley fonts in the directory /usr/lib/vfont.
|
||||
The fonts are expected to be in Vax byte order,
|
||||
even if that is not the natural byte order of the machine,
|
||||
|
||||
@@ -18,9 +18,9 @@
|
||||
<command>fbline</command>
|
||||
<arg choice="opt" rep="norepeat">-c </arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-S <replaceable>squaresize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-W <replaceable>screen_width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-N <replaceable>screen_height</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-S|s <replaceable>squaresize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-W|w <replaceable>screen_width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-N|n <replaceable>screen_height</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-r <replaceable>red</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-g <replaceable>green</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-b <replaceable>blue</replaceable></arg>
|
||||
@@ -33,7 +33,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbline</emphasis>
|
||||
<para><command>fbline</command>
|
||||
draws a line on the currently selected framebuffer
|
||||
between the points (x1, y1) and (x2, y2).
|
||||
The points must be within the bounds of the framebuffer, or they
|
||||
@@ -42,7 +42,7 @@ Use
|
||||
<citerefentry><refentrytitle>fbpoint</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to determine where to position the points.
|
||||
The environment variable FB_FILE specifies
|
||||
the current framebuffer, see
|
||||
the current framebuffer; see
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
Alternatively, the framebuffer may be explicitly specified
|
||||
by using the
|
||||
@@ -55,12 +55,15 @@ requested framebuffer size is 512x512 pixels.
|
||||
|
||||
<para>The
|
||||
<option>-S</option>
|
||||
(or <option>-s</option>)
|
||||
flag sets the width and height to the same value.
|
||||
The
|
||||
<option>-W</option>
|
||||
(or <option>-w</option>)
|
||||
and
|
||||
<option>-N</option>
|
||||
flags sets them individually.
|
||||
(or <option>-n</option>)
|
||||
flags are used for setting them individually.
|
||||
</para>
|
||||
|
||||
<para>The
|
||||
@@ -70,8 +73,8 @@ The default behavior is to draw the line on the current image
|
||||
without clearing the screen.</para>
|
||||
|
||||
<para>The
|
||||
<option>-r red</option>
|
||||
<option>-g green</option>
|
||||
<option>-r red</option> ,
|
||||
<option>-g green</option> ,
|
||||
<option>-b blue</option>
|
||||
flags specify alternate red, green, and blue rgb values for the
|
||||
line color. The default color is white. Thus, a green line is
|
||||
@@ -82,7 +85,7 @@ options.</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="example"><title>EXAMPLE</title>
|
||||
<para>fbline -h -c -r0 -b0 82 11 300 472</para>
|
||||
<para>fbline -s 1024 -c -r0 -b0 82 11 300 472</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="see_also"><title>SEE ALSO</title>
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fbscanplot</command>
|
||||
<arg choice="opt" rep="norepeat">-h </arg>
|
||||
<arg choice="opt" rep="norepeat">-H </arg>
|
||||
<arg choice="opt" rep="norepeat">-v </arg>
|
||||
<arg choice="opt" rep="norepeat">-o </arg>
|
||||
<arg choice="opt" rep="norepeat">-c </arg>
|
||||
@@ -29,7 +29,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Fbscanplot</emphasis>
|
||||
<para><command>fbscanplot</command>
|
||||
will plot the red, green, and blue, pixel intensities of a selected
|
||||
scanline of a framebuffer. The line to be plotted has a first quadrant
|
||||
y coordinate of
|
||||
@@ -43,16 +43,16 @@ is used to select the input display device (see
|
||||
If this variable is not set, the default device for your system will
|
||||
be used.
|
||||
The output will appear on this same device unless a
|
||||
<option>-F </option><replaceable>outframebuffer</replaceable>
|
||||
<option>-F </option><replaceable>outframebuffer</replaceable>
|
||||
flag is given to redirect the output.</para>
|
||||
|
||||
<para>If no size if specified the selected device(s) will be opened at its
|
||||
<para>If no size is specified, the selected device(s) will be opened at its/their
|
||||
default size (usually the full screen). The flag
|
||||
<option>-W </option><replaceable>scr_width</replaceable>
|
||||
<option>-W </option><replaceable>scr_width</replaceable>
|
||||
can be used to set a screen width (scanline length) other than this
|
||||
default.
|
||||
The
|
||||
<option>-h</option>
|
||||
<option>-H</option>
|
||||
flag is a shorthand for a size of 1024x1024.</para>
|
||||
|
||||
<para>Either the bottom 256 or top 256 scanlines will be used to
|
||||
@@ -64,12 +64,12 @@ bottom of the graph being intensity zero; the top 255.</para>
|
||||
|
||||
<para>The
|
||||
<option>-o</option>
|
||||
flag will plot the scanline in overlay mode. With this flag no background
|
||||
flag will plot the scanline in overlay mode. With this flag, no background
|
||||
or grid lines are drawn, and the output always appears in the
|
||||
bottom 256 scanlines of the display. Using this option more of the
|
||||
bottom 256 scanlines of the display. Using this option, more of the
|
||||
image will remain visible, and multiple scanlines can be plotted
|
||||
on top of each other for comparison. The image may make the plot
|
||||
harder to see however.</para>
|
||||
harder to see, however.</para>
|
||||
|
||||
<para>If the
|
||||
<option>-r</option>
|
||||
@@ -90,7 +90,7 @@ to the pixel values ("crunched") before plotting them.
|
||||
This allows the effects of the color map to be readily viewed.</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="example"><title>EXAMPLE</title>
|
||||
<refsection xml:id="example"><title>EXAMPLES</title>
|
||||
<para><userinput>fbscanplot -r 37</userinput>
|
||||
<!-- .br -->
|
||||
will plot the intensities of the scanline 37 up from the bottom.
|
||||
|
||||
@@ -33,12 +33,12 @@
|
||||
<para><command>fbserv</command>
|
||||
opens a framebuffer that may be used by any BRL-CAD routine accessing a framebuffer.
|
||||
The
|
||||
<option>-s or -S</option>
|
||||
<option>-s</option> (or <option>-S</option>)
|
||||
option specifies that a square framebuffer of the specified size (in pixels) is desired. The
|
||||
<option>-n or -N</option>
|
||||
<option>-n</option> (or <option>-N</option>)
|
||||
option indicates the framebuffer height.
|
||||
The
|
||||
<option>-w or -W</option>
|
||||
<option>-w</option> (or <option>-W</option>)
|
||||
option indicates the framebuffer width.
|
||||
The
|
||||
<option>-v</option>
|
||||
@@ -53,9 +53,9 @@ The framebuffer device may be included on the command line without the
|
||||
option if it is the last token on the command line. The port number may
|
||||
also be specified without the
|
||||
<option>-p</option>
|
||||
option. If both the
|
||||
<option>-F and -p</option>
|
||||
options are not used, the port number must be followed by the framebuffer
|
||||
option. If options
|
||||
<option>-F</option> and <option>-p</option>
|
||||
are both omitted, the port number must be followed by the framebuffer
|
||||
device on the command line. While
|
||||
<command>fbserv</command>
|
||||
is running, its port number may then be used in other commands
|
||||
|
||||
@@ -16,30 +16,27 @@
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fbstretch</command>
|
||||
<arg choice="opt" rep="norepeat">-h </arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-f </arg><arg choice="plain" rep="norepeat"><replaceable>input</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>image</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>name</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-s </arg><arg choice="plain" rep="norepeat"><replaceable>input</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>square</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>size</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-w </arg><arg choice="plain" rep="norepeat"><replaceable>input</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-f </arg><arg choice="plain" rep="norepeat"><replaceable>input_image_name</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-s </arg><arg choice="plain" rep="norepeat"><replaceable>input_square_size</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-w </arg><arg choice="plain" rep="norepeat"><replaceable>input_width</replaceable></arg></arg>
|
||||
<sbr/>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-n </arg><arg choice="plain" rep="norepeat"><replaceable>input</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-n </arg><arg choice="plain" rep="norepeat"><replaceable>input_height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat">-a </arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-x </arg><arg choice="plain" rep="norepeat"><replaceable>horizontal</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>scale</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>factor</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-y </arg><arg choice="plain" rep="norepeat"><replaceable>vertical</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>scale</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>factor</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-x </arg><arg choice="plain" rep="norepeat"><replaceable>horizontal_scale</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>factor</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-y </arg><arg choice="plain" rep="norepeat"><replaceable>vertical_scale</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>factor</replaceable></arg></arg>
|
||||
<sbr/>
|
||||
<arg choice="opt" rep="norepeat">-v </arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-S </arg><arg choice="plain" rep="norepeat"><replaceable>output</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>square</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>size</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-W </arg><arg choice="plain" rep="norepeat"><replaceable>output</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-N </arg><arg choice="plain" rep="norepeat"><replaceable>output</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>height</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-S </arg><arg choice="plain" rep="norepeat"><replaceable>output_square_size</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-W </arg><arg choice="plain" rep="norepeat"><replaceable>output_width</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="plain" rep="norepeat">-N </arg><arg choice="plain" rep="norepeat"><replaceable>output_height</replaceable></arg></arg>
|
||||
<sbr/>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="opt" rep="norepeat">-F </arg><arg choice="plain" rep="norepeat"><replaceable>output</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>frame</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>buffer</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>name</replaceable></arg></arg>
|
||||
<arg choice="opt" rep="norepeat"><arg choice="opt" rep="norepeat">-F </arg><arg choice="plain" rep="norepeat"><replaceable>output_frame_buffer</replaceable></arg><arg choice="plain" rep="norepeat"><replaceable>name</replaceable></arg></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<!-- .lg 0 IGNORED -->
|
||||
<para>fbstretch
|
||||
<!-- .lg IGNORED -->
|
||||
<para><command>fbstretch</command>
|
||||
expands or compresses a frame buffer image,
|
||||
in either or both the horizontal and vertical directions.
|
||||
The image scaling origin (fixed point) is
|
||||
@@ -47,19 +44,10 @@ the lower left-hand corner of the display.
|
||||
When expanding (scale factor greater than 1), pixels are simply replicated;
|
||||
when compressing (scale factor less than 1), pixel averaging is performed
|
||||
unless sampling is explicitly requested by the
|
||||
<!-- .lg 0 IGNORED -->
|
||||
-a
|
||||
<!-- .lg IGNORED -->
|
||||
<replaceable>-a</replaceable>
|
||||
option.</para>
|
||||
|
||||
<refsection xml:id="options"><title>Options</title>
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term>-h</term>
|
||||
<listitem>
|
||||
<!-- .lg IGNORED -->
|
||||
<para>(“high resolution”)Assumes 1024 by 1024 pixels for default input image size
|
||||
instead of 512 by 512.
|
||||
<para>The default input image size is 512 by 512.
|
||||
Explicitly specified sizes override the default,
|
||||
and if actual input image size is smaller than requested,
|
||||
the actual size will be used.
|
||||
@@ -71,10 +59,11 @@ if the stretched image would extend beyond the requested output size,
|
||||
it will be clipped to fit,
|
||||
even if there is room for it in the actual frame buffer.
|
||||
Actual sizes depend on details of specific frame buffers.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<refsection xml:id="options"><title>Options</title>
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term>-f <emphasis remap="I">input image name</emphasis></term>
|
||||
<term>-f <emphasis remap="I">input_image_name</emphasis></term>
|
||||
<listitem>
|
||||
<para>Inputs the image to be displayed
|
||||
from the specified frame buffer or <citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry> file,
|
||||
@@ -83,41 +72,41 @@ This option may not work if input and output frame buffers are the same device.<
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-s<emphasis remap="P->I"> input square size</emphasis></term>
|
||||
<term>-s<emphasis remap="P->I"> input_square_size</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies input image width and height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-w<emphasis remap="P->I"> input width</emphasis></term>
|
||||
<term>-w<emphasis remap="P->I"> input_ width</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies input image width.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-n<emphasis remap="P->I"> input height</emphasis></term>
|
||||
<term>-n<emphasis remap="P->I"> input_height</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies input image height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-a<emphasis remap="P->I"/></term>
|
||||
<term>-a<emphasis remap="P->I"/></term>
|
||||
<listitem>
|
||||
<!-- .lg IGNORED -->
|
||||
<para>(“no averaging”)Specifies that output pixels will be sampled from the input,
|
||||
<para>(no averaging) Specifies that output pixels will be sampled from the input,
|
||||
instead of being computed by averaging RGB values.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-v<emphasis remap="P->I"/></term>
|
||||
<term>-v<emphasis remap="P->I"/></term>
|
||||
<listitem>
|
||||
<!-- .lg IGNORED -->
|
||||
<para>(“verbose”)Causes actual sizes and scale factors used
|
||||
<para>(verbose) Causes actual sizes and scale factors used
|
||||
to be printed on the standard error output.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-x<emphasis remap="P->I"> horizontal scale factor</emphasis></term>
|
||||
<term>-x<emphasis remap="P->I"> horizontal_scale_factor</emphasis></term>
|
||||
<listitem>
|
||||
<para>Scales the image by the specified factor in the horizontal direction;
|
||||
the default is the ratio of requested output to input widths,
|
||||
@@ -126,7 +115,7 @@ otherwise 1.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-y<emphasis remap="P->I"> vertical scale factor</emphasis></term>
|
||||
<term>-y<emphasis remap="P->I"> vertical_scale_factor</emphasis></term>
|
||||
<listitem>
|
||||
<para>Scales the image by the specified factor in the vertical direction;
|
||||
the default is the ratio of requested output to input heights,
|
||||
@@ -135,42 +124,36 @@ otherwise 1.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-S<emphasis remap="P->I"> output square size</emphasis></term>
|
||||
<term>-S<emphasis remap="P->I"> output_square_size</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies output frame buffer width and height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-W<emphasis remap="P->I"> output width</emphasis></term>
|
||||
<term>-W<emphasis remap="P->I"> output_width</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies output frame buffer width.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-N<emphasis remap="P->I"> output height</emphasis></term>
|
||||
<term>-N<emphasis remap="P->I"> output_height</emphasis></term>
|
||||
<listitem>
|
||||
<para>Specifies output frame buffer height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term>-F<emphasis remap="P->I"> output frame buffer name</emphasis></term>
|
||||
<term>-F<emphasis remap="P->I"> output_frame_buffer_name</emphasis></term>
|
||||
<listitem>
|
||||
<para>Outputs to the specified frame buffer
|
||||
instead of the one specified by the
|
||||
<!-- .lg 0 IGNORED -->
|
||||
FB_FILE<emphasis remap="P->I">
|
||||
<!-- .lg IGNORED -->
|
||||
<replaceable>FB_FILE</replaceable>
|
||||
environment variable
|
||||
(or the default, if
|
||||
<!-- .lg 0 IGNORED -->
|
||||
</emphasis>FB_FILE<emphasis remap="P->I">
|
||||
<!-- .lg IGNORED -->
|
||||
<replaceable>FB_FILE</replaceable>
|
||||
is not set).
|
||||
If this is the last option specified, the
|
||||
<!-- .lg 0 IGNORED -->
|
||||
</emphasis>-F<emphasis remap="P->I">
|
||||
<!-- .lg IGNORED -->
|
||||
is optional.</emphasis></para>
|
||||
<replaceable>-F</replaceable>
|
||||
is optional.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -186,18 +169,14 @@ are a good example of this.</para>
|
||||
|
||||
<refsection xml:id="example"><title>EXAMPLE</title>
|
||||
<para>The following procedure enlarges an image,
|
||||
obtained from a personal computer
|
||||
<emphasis remap="I">via</emphasis>
|
||||
the
|
||||
<!-- .lg 0 IGNORED -->
|
||||
gif-fb<emphasis remap="P->I">
|
||||
<!-- .lg IGNORED -->
|
||||
obtained from a personal computer via the
|
||||
<replaceable>gif-fb</replaceable>
|
||||
utility,
|
||||
to fill a 1280-by-1024 frame buffer.</emphasis></para>
|
||||
to fill a 1280-by-1024 frame buffer.</para>
|
||||
<blockquote remap="RS">
|
||||
<para><emphasis remap="I">$</emphasis> gif-fb image.gif # <emphasis remap="P->I">displays the 320x200 PC image</emphasis>
|
||||
<para><emphasis remap="I">$</emphasis> gif-fb image.gif # <emphasis remap="P->I">displays the 320x200 PC image</emphasis>
|
||||
<!-- .br -->
|
||||
<emphasis remap="I">$</emphasis> fbstretch -w 320 -n 200 -W 1280 -N 1024</para></blockquote> <!-- remap='RE' -->
|
||||
<emphasis remap="I">$</emphasis> fbstretch -w 320 -n 200 -W 1280 -N 1024</para></blockquote> <!-- remap='RE' -->
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="see_also"><title>SEE ALSO</title>
|
||||
|
||||
@@ -16,10 +16,11 @@
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>fbzoom</command>
|
||||
<arg choice="opt" rep="norepeat">-T</arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>frame_buffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-s <replaceable>image_sqrsize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-w <replaceable>image_width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-n <replaceable>image_height</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-s|S <replaceable>image_sqrsize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-w|W <replaceable>image_width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-n|N <replaceable>image_height</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
@@ -36,42 +37,51 @@ optional command line arguments,</para>
|
||||
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-F frame_buffer</option></term>
|
||||
<term><option>-T</option></term>
|
||||
<listitem>
|
||||
<para>toggles the sense of the pan commands.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-F </option><replaceable>frame_buffer</replaceable></term>
|
||||
<listitem>
|
||||
<para>explicitly specifies the frame buffer. Otherwise, the environment variable
|
||||
<emphasis remap="I">FB_FILE</emphasis>
|
||||
<replaceable>FB_FILE</replaceable>
|
||||
specifies
|
||||
the current framebuffer, see
|
||||
the current framebuffer; see
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-s image_sqrsize</option></term>
|
||||
<term><option>-s </option>(or <option>-S</option>)
|
||||
<replaceable>image_sqrsize</replaceable></term>
|
||||
<listitem>
|
||||
<para>displays the image file as a square,
|
||||
<emphasis remap="B">image_sqrsize</emphasis>
|
||||
<replaceable>image_sqrsize</replaceable>
|
||||
pixels per side (default is 512x512).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-w image_width</option></term>
|
||||
<term><option>-w </option>(or <option>-W</option>)
|
||||
<replaceable>image_width</replaceable></term>
|
||||
<listitem>
|
||||
<para>displays the image
|
||||
<emphasis remap="B">image_width</emphasis>
|
||||
<replaceable>image_width</replaceable>
|
||||
pixels wide (default is 512).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-n image_height</option></term>
|
||||
<term><option>-n </option>(or <option>-N</option>)
|
||||
<replaceable>image_height</replaceable></term>
|
||||
<listitem>
|
||||
<para>displays the image
|
||||
<emphasis remap="B">image_height</emphasis>
|
||||
<replaceable>image_height</replaceable>
|
||||
pixels high (default is 512).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para><emphasis remap="I">Fbzoom</emphasis>
|
||||
<para><command>fbzoom</command>
|
||||
will display the image currently in the frame buffer and then act on commands
|
||||
entered by the user. Available commands are:</para>
|
||||
|
||||
|
||||
@@ -61,12 +61,12 @@ The
|
||||
flag will output a
|
||||
<citerefentry><refentrytitle>bw</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
black and white file instead.
|
||||
By specifying the
|
||||
If the
|
||||
<option>-c</option>
|
||||
flag, the input image is centered in the middle of the output image.
|
||||
By specifying the
|
||||
flag is specified, the input image is centered in the middle of the output image.
|
||||
If the
|
||||
<option>-l</option>
|
||||
flag, the default output size is changed to 512x512.
|
||||
flag is specified, the default output size is changed to 512x512.
|
||||
Alternatively, the
|
||||
<option>-S</option>
|
||||
flag can be used to specify the square output size, or
|
||||
@@ -80,15 +80,14 @@ If no input file is specified, standard input is read instead.</para>
|
||||
The <option>-X</option> and <option>-Y</option> flags can be used to specify the output x and y offset.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='examples'><title>EXAMPLES</title>
|
||||
<refsect1 xml:id='examples'><title>EXAMPLE</title>
|
||||
<para>Especially pleasing displays of MacPaint documents can be made by using
|
||||
<citerefentry><refentrytitle>pixmerge</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to combine them with the output of
|
||||
<citerefentry><refentrytitle>pixbackgnd</refentrytitle><manvolnum>1</manvolnum></citerefentry>:
|
||||
<!-- .br -->
|
||||
pixbackgnd -h 160 200 > bg.pix
|
||||
<!-- .br -->
|
||||
mac-pix -c file.mac | pixmerge - bg.pix | pix-fb</para>
|
||||
</para>
|
||||
<para>pixbackgnd -H 160 200 > bg.pix</para>
|
||||
<para>mac-pix -c file.mac | pixmerge - bg.pix | pix-fb</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='see_also'><title>SEE ALSO</title>
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
<arg choice="opt" rep="norepeat">-b </arg>
|
||||
<arg choice="opt" rep="norepeat">-c </arg>
|
||||
<arg choice="opt" rep="norepeat">-d display</arg>
|
||||
<arg choice="opt" rep="norepeat">-h </arg>
|
||||
<arg choice="opt" rep="norepeat">-h|? </arg>
|
||||
<arg choice="opt" rep="norepeat">-r </arg>
|
||||
<arg choice="opt" rep="norepeat">-x#</arg>
|
||||
<arg choice="opt" rep="norepeat">-X#</arg>
|
||||
@@ -124,7 +124,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-h </option></term>
|
||||
<term><option>-h</option> or <option>-?</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Prints out a brief help statement showing the options available when starting
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
<arg choice="opt" rep="norepeat">-d</arg>
|
||||
<arg choice="opt" rep="norepeat">-g<replaceable>grouping</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-h<replaceable>plate_thickness</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-f</arg>
|
||||
<arg choice="opt" rep="norepeat">-i</arg>
|
||||
<arg choice="opt" rep="norepeat">-m<replaceable>mode</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-o<replaceable>open_bot_type</replaceable></arg>
|
||||
@@ -129,6 +130,17 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-f</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Fuse vertices that are within <replaceable>distance_tolerance</replaceable>
|
||||
of each other. This can make the solidity detection more reliable,
|
||||
but may significantly increase processing time during conversion.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-i</option></term>
|
||||
<listitem>
|
||||
@@ -203,7 +215,7 @@
|
||||
<listitem>
|
||||
<para>
|
||||
Maximum distance, in mm units, where two vertices are
|
||||
considered the same. The default is 0.0005mm which matches
|
||||
considered the same. The default is 0.0005mm, which matches
|
||||
the default raytracer distance tolerance. Do not change this
|
||||
value unless you also change the raytracer distance
|
||||
tolerance.
|
||||
@@ -279,7 +291,7 @@
|
||||
</variablelist>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="objg_examples"><title>EXAMPLE</title>
|
||||
<refsection xml:id="objg_examples"><title>EXAMPLES</title>
|
||||
|
||||
<para>
|
||||
The following will convert the obj file <emphasis remap="I">input.obj</emphasis>
|
||||
|
||||
@@ -61,8 +61,8 @@ before output will begin appearing.</para>
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<listitem>
|
||||
<para>Debug option, provides verbose description of file structure and
|
||||
processes called, written on standard error.</para>
|
||||
<para>Debug option; provides verbose description of file structure and
|
||||
processes called; written on standard error.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
@@ -83,7 +83,7 @@ the normal mode, as the previous image must be read back into the host.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-b</option><replaceable>x</replaceable></term>
|
||||
<term><option>-b </option><replaceable>x</replaceable></term>
|
||||
<listitem>
|
||||
<para>If the image is not being decoded in overlay mode, the background is
|
||||
normally set to the value recorded in the RLE file.
|
||||
@@ -108,7 +108,7 @@ can be any of
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-p</option><replaceable>x y</replaceable></term>
|
||||
<term><option>-p </option><replaceable>x y</replaceable></term>
|
||||
<listitem>
|
||||
<para>Reposition the image.
|
||||
The original lower left corner is positioned at
|
||||
@@ -123,7 +123,7 @@ and it is repositioned, the framebuffer will be opened in
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-F framebuffer</option></term>
|
||||
<term><option>-F framebuffer</option></term>
|
||||
<listitem>
|
||||
<para>indicates that the output should be sent to the indicated framebuffer.
|
||||
See
|
||||
@@ -142,12 +142,10 @@ for more details on the specification of a framebuffer.</para>
|
||||
|
||||
<refsection xml:id="examples"><title>EXAMPLES</title>
|
||||
<blockquote remap="RS">
|
||||
<para> orle-fb truck.rle
|
||||
<!-- .br -->
|
||||
orle-fb -Ot text.rle
|
||||
<!-- .br -->
|
||||
orle-fb -bG <car.rle
|
||||
</para></blockquote> <!-- remap='RE' -->
|
||||
<para>orle-fb truck.rle</para>
|
||||
<para>orle-fb -Ot text.rle</para>
|
||||
<para>orle-fb -bG <car.rle</para>
|
||||
</blockquote> <!-- remap='RE' -->
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="see_also"><title>SEE ALSO</title>
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>orle-fb</emphasis>
|
||||
<para><emphasis remap='I'>orle-pix</emphasis>
|
||||
decodes an old University of Utah standard (Edition-2)
|
||||
Run-Length Encoded (RLE) format file
|
||||
(saved with
|
||||
@@ -47,8 +47,8 @@ is is applied to the pixels as they are output.</para>
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<listitem>
|
||||
<para>Debug option, provides verbose description of file structure and
|
||||
processes called, written on standard error.</para>
|
||||
<para>Debug option; provides verbose description of file structure and
|
||||
processes called; written on standard error.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
@@ -59,7 +59,7 @@ on standard error.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-b</option><replaceable>x</replaceable></term>
|
||||
<term><option>-b </option><replaceable>x</replaceable></term>
|
||||
<listitem>
|
||||
<para>The background of the image is
|
||||
normally set to the value recorded in the RLE file.
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Pix-bw3</emphasis>
|
||||
<para><command>pix-bw3</command>
|
||||
reads a color
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format file
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>pix-orle</emphasis>
|
||||
<para><command>pix-orle</command>
|
||||
saves a
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format image in a
|
||||
@@ -38,7 +38,8 @@ This program is provided for compatibility with the old RLE image
|
||||
tools, and generally should not be used for saving new images,
|
||||
except where compatibility with the old tools is a factor.
|
||||
The equivalent new tool is
|
||||
<emphasis remap='I'>pix-rle(1)</emphasis>.</para>
|
||||
<citerefentry><refentrytitle>pix-rle</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
.</para>
|
||||
|
||||
<para>If
|
||||
<emphasis remap='I'>file.pix</emphasis>
|
||||
@@ -48,7 +49,7 @@ file is read from standard in.
|
||||
If
|
||||
<emphasis remap='I'>file.rle</emphasis>
|
||||
is not specified, the encoded file is written to standard out.
|
||||
<emphasis remap='I'>pix-orle</emphasis>
|
||||
<command>pix-orle</command>
|
||||
attempts to compress flat-colored areas
|
||||
as much as possible.
|
||||
This means that it is generally reasonable to save an entire image,
|
||||
@@ -102,14 +103,13 @@ on standard error as it proceeds through encoding the image.</para>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='example'><title>EXAMPLE</title>
|
||||
<blockquote remap='RS'>
|
||||
<para>pix-orle <plane.pix plane.rle
|
||||
<!-- .br -->
|
||||
pix-orle -h car.pix car.rle
|
||||
<!-- .br -->
|
||||
pixfilter -f lo <truck.pix | pix-orle > truck-filt.rle
|
||||
</para></blockquote> <!-- remap='RE' -->
|
||||
<refsect1 xml:id='example'><title>EXAMPLES</title>
|
||||
<para>pix-orle <plane.pix plane.rle
|
||||
</para>
|
||||
<para>pix-orle -h car.pix car.rle
|
||||
</para>
|
||||
<para>pixfilter -f lo <truck.pix | pix-orle > truck-filt.rle
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='see_also'><title>SEE ALSO</title>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<refsynopsisdiv xml:id='synopsis'>
|
||||
<cmdsynopsis>
|
||||
<command>pixbackgnd</command>
|
||||
<arg choice='opt'>-h </arg>
|
||||
<arg choice='opt'>-H </arg>
|
||||
<arg choice='opt'>-i </arg>
|
||||
<arg choice='opt'>-s <replaceable>squaresize</replaceable></arg>
|
||||
<arg choice='opt'>-w <replaceable>width</replaceable></arg>
|
||||
@@ -32,7 +32,7 @@
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>pixbackgnd</command>
|
||||
<arg choice='opt'>-h </arg>
|
||||
<arg choice='opt'>-H </arg>
|
||||
<arg choice='opt'>-i </arg>
|
||||
<arg choice='opt'>-s <replaceable>squaresize</replaceable></arg>
|
||||
<arg choice='opt'>-w <replaceable>width</replaceable></arg>
|
||||
@@ -48,7 +48,7 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Pixbackgnd</emphasis>
|
||||
<para><command>pixbackgnd</command>
|
||||
generates a
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format shaded background on stdout suitable for
|
||||
@@ -57,16 +57,17 @@ The upper portion of the screen is reserved for a title area,
|
||||
and is drawn at constant intensity 240,
|
||||
followed by a 4 scanline white bar,
|
||||
after which the intensity smoothly decreases from 240 to 50.
|
||||
<emphasis remap='I'>Hue</emphasis>
|
||||
The values of
|
||||
<emphasis remap='I'>hue</emphasis>
|
||||
and
|
||||
<emphasis remap='I'>saturation</emphasis>
|
||||
are values from 0 to 255 and can be selected via
|
||||
range from 0 to 255 inclusive and can be selected via
|
||||
<citerefentry><refentrytitle>fbcolor</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
A hue of 160 is a pleasing blue.</para>
|
||||
|
||||
<para>By default, the title height is
|
||||
80 scanlines, or 90 scanlines if the
|
||||
<option>-h</option>
|
||||
<option>-H</option>
|
||||
flag is set, but the
|
||||
<option>-t </option><replaceable>title_height</replaceable>
|
||||
option may be used to specify another value.
|
||||
@@ -76,9 +77,9 @@ is set to zero, then the white bar
|
||||
is omitted as well, and the entire display is smoothly shaded.</para>
|
||||
|
||||
<para>By default, the display is assumed to be 512x512 pixels;
|
||||
by specifying the
|
||||
<option>-h</option>
|
||||
flag, the output size is changed to 1024x1024.</para>
|
||||
specifying the
|
||||
<option>-H</option>
|
||||
flag, in addition to changing the title height to 90 scanlines (see above), changes the output size to 1024x1024.</para>
|
||||
|
||||
<para>By specifying the
|
||||
<option>-i</option>
|
||||
@@ -97,11 +98,9 @@ By default, the top intensity is 240, and the bottom is 50.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='examples'><title>EXAMPLES</title>
|
||||
<para>pixbackgnd 160 200 | pixmerge fg.pix - | pix-fb
|
||||
<!-- .br -->
|
||||
pixbackgnd -t120 160 250
|
||||
<!-- .br -->
|
||||
pixbackgnd -i -t0 160 200 | cat-fb -O file.troff</para>
|
||||
<para>pixbackgnd 160 200 | pixmerge fg.pix - | pix-fb</para>
|
||||
<para>pixbackgnd -t120 160 250</para>
|
||||
<para>pixbackgnd -i -t0 160 200 | cat-fb -O file.troff</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='see_also'><title>SEE ALSO</title>
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Pixborder</emphasis>
|
||||
<para><command>pixborder</command>
|
||||
reads an input stream of
|
||||
<emphasis remap='I'>pix</emphasis>
|
||||
data,
|
||||
@@ -64,7 +64,7 @@ the default interior color of 255 255 255 by
|
||||
<emphasis remap='I'>R G B</emphasis>,
|
||||
while the
|
||||
<option>-I</option>
|
||||
replaces it by
|
||||
option replaces it by
|
||||
<emphasis remap='I'>H S V</emphasis>,
|
||||
which are reals,
|
||||
with
|
||||
@@ -108,7 +108,7 @@ The
|
||||
option sets the left edge of that rectangle:
|
||||
no pixels to the left of this edge are changed.
|
||||
The
|
||||
<option>-X</option>, <emphasis remap='B'>y</emphasis>, and <emphasis remap='B'>Y</emphasis>
|
||||
<option>-X</option>, <option>-y</option>, and <option>-Y</option>
|
||||
options respectively
|
||||
set the right, bottom, and top edges
|
||||
in the same manner.</para>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<refsynopsisdiv xml:id='synopsis'>
|
||||
<cmdsynopsis>
|
||||
<command>pixtile</command>
|
||||
<arg choice='opt'>-h </arg>
|
||||
<arg choice='opt'>-s <replaceable>squareinsize</replaceable></arg>
|
||||
<arg choice='opt'>-w <replaceable>file_width</replaceable></arg>
|
||||
<arg choice='opt'>-n <replaceable>file_height</replaceable></arg>
|
||||
@@ -31,7 +30,6 @@
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>pixtile</command>
|
||||
<arg choice='opt'>-h </arg>
|
||||
<arg choice='opt'>-s <replaceable>squareinsize</replaceable></arg>
|
||||
<arg choice='opt'>-w <replaceable>file_width</replaceable></arg>
|
||||
<arg choice='opt'>-n <replaceable>file_height</replaceable></arg>
|
||||
@@ -48,22 +46,19 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Pixtile</emphasis>
|
||||
<para><command>pixtile</command>
|
||||
takes a collection of numbered small images and places them side
|
||||
by side in one larger image. The input and output files are
|
||||
assumed to be in
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format.
|
||||
By default, the output file will be made 512x512 pixels in size.
|
||||
Specifying the
|
||||
<option>-h</option>
|
||||
flag, changes the default size to 1024x1024 pixels.</para>
|
||||
By default, the output file will be made 512x512 pixels in size.</para>
|
||||
|
||||
<para>The input files have a default width of 64 pixels per scanline
|
||||
and are usually square, i.e. have the same height as width.
|
||||
Specifying the
|
||||
<option>-s</option>
|
||||
flag, changes the default size to
|
||||
flag changes the default size to
|
||||
<emphasis remap='I'>squareinsize</emphasis>
|
||||
pixels per scanline and
|
||||
<emphasis remap='I'>squareinsize</emphasis>
|
||||
@@ -93,14 +88,6 @@ flag sets the output height size to
|
||||
<emphasis remap='I'>out_height</emphasis>
|
||||
scanlines.</para>
|
||||
<variablelist remap='TP'>
|
||||
<varlistentry>
|
||||
<term><option>-h</option></term>
|
||||
<listitem>
|
||||
<para>"hires" flag.
|
||||
Set both the height and width of the output to 1024.
|
||||
The default is 512x512.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-s </option><replaceable>squareinsize</replaceable></term>
|
||||
<listitem>
|
||||
@@ -152,7 +139,7 @@ The default is 512.</para>
|
||||
is substituted for
|
||||
<emphasis remap='I'>num</emphasis>
|
||||
in
|
||||
<emphasis remap='I'>basename.num</emphasis></para>
|
||||
<emphasis remap='I'>basename.num</emphasis>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
@@ -193,23 +180,23 @@ the names of the files being pasted together are assumed
|
||||
to be explicitly stated and the
|
||||
<option>-o</option>
|
||||
flag is not valid. This allows files with different names to be
|
||||
used without having to change the name of the files.</para>
|
||||
used without having to change those names.</para>
|
||||
|
||||
<para>This program is the companion of
|
||||
<citerefentry><refentrytitle>fbanim</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
<citerefentry><refentrytitle>fbanim</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
which will step through these small images on a framebuffer capable
|
||||
of zooming and windowing. Thus many small low resolution frames can
|
||||
be used as an animation "preview" for a higher resolution sequence,
|
||||
the latter of which would go onto video tape or film.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='example'><title>EXAMPLE</title>
|
||||
<para><userinput>pixtile -h -s 128 -o 2 anim > out.pix</userinput>
|
||||
<refsect1 xml:id='example'><title>EXAMPLES</title>
|
||||
<para><userinput>pixtile -S 1024 -s 128 -o 2 anim > out.pix</userinput>
|
||||
<!-- .br -->
|
||||
will read files
|
||||
<emphasis remap='I'>anim.2</emphasis>
|
||||
through
|
||||
<emphasis remap='I'>anim.65</emphasis>
|
||||
<emphasis remap='I'>anim.65</emphasis>,
|
||||
placing them from lower left to upper right in a 1024x1024 pixel
|
||||
file
|
||||
<emphasis remap='I'>out.pix</emphasis>.</para>
|
||||
@@ -221,7 +208,7 @@ will read files
|
||||
<emphasis remap='I'>lowerright</emphasis>,
|
||||
<emphasis remap='I'>upperleft</emphasis>,
|
||||
and
|
||||
<emphasis remap='I'>upperright</emphasis>
|
||||
<emphasis remap='I'>upperright</emphasis>,
|
||||
placing them from lower left to upper right in a 512x512 file
|
||||
<emphasis remap='I'>out.pix</emphasis>.</para>
|
||||
</refsect1>
|
||||
|
||||
@@ -11,13 +11,12 @@
|
||||
|
||||
<refnamediv>
|
||||
<refname>pixuntile</refname>
|
||||
<refpurpose>break small images up into separate files</refpurpose>
|
||||
<refpurpose>break image up into separate files</refpurpose>
|
||||
</refnamediv>
|
||||
<!-- body begins here -->
|
||||
<refsynopsisdiv xml:id='synopsis'>
|
||||
<cmdsynopsis>
|
||||
<command>pixuntile</command>
|
||||
<arg choice='opt'>-h </arg>
|
||||
<arg choice='opt'>-s <replaceable>squareinsize</replaceable></arg>
|
||||
<arg choice='opt'>-w <replaceable>in_width</replaceable></arg>
|
||||
<arg choice='opt'>-n <replaceable>in_height</replaceable></arg>
|
||||
@@ -31,7 +30,6 @@
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>pixuntile</command>
|
||||
<arg choice='opt'>-h </arg>
|
||||
<arg choice='opt'>-s <replaceable>squareinsize</replaceable></arg>
|
||||
<arg choice='opt'>-w <replaceable>in_width</replaceable></arg>
|
||||
<arg choice='opt'>-n <replaceable>in_height</replaceable></arg>
|
||||
@@ -48,7 +46,7 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Pixuntile</emphasis>
|
||||
<para><command>pixuntile</command>
|
||||
performs the inverse operation of
|
||||
<citerefentry><refentrytitle>pixtile</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
It takes a large image composed of a collection of small images and
|
||||
@@ -57,20 +55,17 @@ The input and output files are
|
||||
assumed to be in
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format.
|
||||
By default, the input file is assumed to be 512x512 pixels in size.
|
||||
Specifying the
|
||||
<option>-h</option>
|
||||
flag, changes the default input size to 1024x1024 pixels.</para>
|
||||
By default, the input file is assumed to be 512x512 pixels in size.</para>
|
||||
|
||||
<para>The output files have a default width of 64 pixels
|
||||
and are usually square, i.e. have the same height as width.
|
||||
Specifying the
|
||||
<option>-S</option>
|
||||
flag, changes the default size to
|
||||
flag changes the default size to
|
||||
<emphasis remap='I'>squareoutsize</emphasis>
|
||||
pixels in width and height.</para>
|
||||
|
||||
<para>The files being produces as output will have names of the form
|
||||
<para>The files being produced as output will have names of the form
|
||||
<emphasis remap='I'>basename.num</emphasis>,
|
||||
where
|
||||
<emphasis remap='I'>basename</emphasis>
|
||||
@@ -86,7 +81,7 @@ flag and specifying the starting output frame number, where
|
||||
is substituted for
|
||||
<emphasis remap='I'>num</emphasis>
|
||||
in
|
||||
<emphasis remap='I'>basename.num</emphasis></para>
|
||||
<emphasis remap='I'>basename.num</emphasis>.</para>
|
||||
|
||||
<para>Alternatively, if more than one
|
||||
<emphasis remap='I'>basename</emphasis>
|
||||
@@ -95,11 +90,11 @@ the names of the files are used as the output file names.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='example'><title>EXAMPLE</title>
|
||||
<para><userinput>pixuntile -h -S 128 out < in.pix</userinput>
|
||||
<para><userinput>pixuntile -s 1024 -S 128 out < in.pix</userinput>
|
||||
<!-- .br -->
|
||||
will read the 1024x1024 file
|
||||
<emphasis remap='I'>in.pix</emphasis>
|
||||
and place the 128x128 chucks of that file from
|
||||
and place the 128x128 chunks of that file from
|
||||
lower left to upper right in the files
|
||||
<emphasis remap='I'>out.0</emphasis>
|
||||
through
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<refsynopsisdiv xml:id="synopsis">
|
||||
<cmdsynopsis sepchar=" ">
|
||||
<command>png-fb</command>
|
||||
<arg choice="opt" rep="norepeat">-Hhicvz1 </arg>
|
||||
<arg choice="opt" rep="norepeat">-Hicvz1 </arg>
|
||||
<arg choice="opt" rep="norepeat">-gscreen_gamma </arg>
|
||||
<arg choice="opt" rep="norepeat">-Fframebuffer </arg>
|
||||
<arg choice="opt" rep="norepeat">-m#lines </arg>
|
||||
@@ -33,7 +33,7 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Png-fb</emphasis>
|
||||
<para><command>png-fb</command>
|
||||
reads a
|
||||
<emphasis remap="I">PNG</emphasis>
|
||||
format file from the named file, or from
|
||||
@@ -47,9 +47,8 @@ by using the
|
||||
<option>-F</option>
|
||||
flag.</para>
|
||||
|
||||
<para>By default, the requested framebuffer size, is assumed to be 512x512 pixels.
|
||||
<option>-h</option>
|
||||
flag changes the size to 1024x1024.</para>
|
||||
<para>By default, the requested framebuffer size is assumed to be 512x512 pixels.
|
||||
</para>
|
||||
|
||||
<para>The
|
||||
<option>-g</option>
|
||||
|
||||
@@ -23,11 +23,11 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Png_info</emphasis>
|
||||
<para><command>png_info</command>
|
||||
will print most of the information available from a PNG file other than the image itself.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='examples'><title>EXAMPLES</title>
|
||||
<refsect1 xml:id='examples'><title>EXAMPLE</title>
|
||||
<para><command>png_info</command>
|
||||
file.png</para>
|
||||
</refsect1>
|
||||
|
||||
@@ -23,10 +23,10 @@
|
||||
|
||||
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
<para><emphasis remap="I">Polar-fb</emphasis>
|
||||
<para><command>polar-fb</command>
|
||||
reads data for a normalized polar function (npf)
|
||||
from
|
||||
<emphasis remap="I">file,</emphasis>
|
||||
<emphasis remap="I">file</emphasis>,
|
||||
and produces the graph on a frame buffer.
|
||||
If
|
||||
<emphasis remap="I">file</emphasis>
|
||||
@@ -39,9 +39,9 @@ the second as a value of rho.</para>
|
||||
<para>An npf is a function,
|
||||
<!-- .sp
|
||||
.ce -->
|
||||
phi : [0, 2pi) → [0, 1],
|
||||
phi : [0, 2pi] → [0, 1],
|
||||
<!-- .sp -->
|
||||
that maps angles between 0 and 2pi (i.e., between 0 and 360 degrees)
|
||||
that maps angles between 0 and 2pi radians (i.e., between 0 and 360 degrees)
|
||||
into the unit interval.
|
||||
A typical application for an npf
|
||||
is to describe some attribute of an MGED model
|
||||
@@ -50,35 +50,37 @@ as a function of the direction from which the geometry is viewed.</para>
|
||||
<para>In the absence of command-line options,
|
||||
<command>polar-fb</command>
|
||||
fills the default area of the frame buffer
|
||||
(typically 512×512 pixels)
|
||||
(typically 512x512 pixels)
|
||||
with a background color
|
||||
and displays the interior of the npf
|
||||
(i.e., {(theta, rho) | rho <= phi(theta)}).
|
||||
The graph is positioned with its origin
|
||||
<emphasis remap="I">O,</emphasis>
|
||||
<emphasis remap="I">O</emphasis>,
|
||||
at the center of the frame-buffer,
|
||||
oriented with theta = 0 at the bottom,
|
||||
oriented with theta=0 at the bottom,
|
||||
and scaled so that the unit circle just fits in the frame buffer.
|
||||
The graph consists of concentric regions colored
|
||||
blue, green, yellow, orange, or red,
|
||||
depending on distance from
|
||||
<emphasis remap="I">O.Finally,</emphasis>
|
||||
<emphasis remap="I">O</emphasis>. Finally,
|
||||
<command>polar-fb</command>
|
||||
superimposes a polar grid in black.</para>
|
||||
|
||||
<para>In the description that follows of the valid options,
|
||||
``<emphasis remap="I">r g b</emphasis>''
|
||||
is a triplet of integers in {0, ..., 255}
|
||||
``<emphasis remap="I">r </emphasis>
|
||||
<emphasis remap="I">g </emphasis>
|
||||
<emphasis remap="I">b</emphasis>''
|
||||
is a triplet of integers in {0,...,255}
|
||||
that specifies a color in terms of
|
||||
intensities for red, green, and blue, respectively.
|
||||
The options and their meanings are:</para>
|
||||
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-F</option><replaceable> fbfile</replaceable></term>
|
||||
<term><option>-F </option><replaceable>fbfile</replaceable></term>
|
||||
<listitem>
|
||||
<para>Send the results to the frame buffer
|
||||
<emphasis remap="I">fbfile.In the absence of the</emphasis>
|
||||
<emphasis remap="I">fbfile</emphasis>. In the absence of the
|
||||
<option>-F</option>
|
||||
option, if the shell variable
|
||||
<emphasis remap="B">FB_FILE</emphasis>
|
||||
@@ -87,7 +89,7 @@ Otherwise, the host's default frame buffer is used.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-N</option><replaceable> scr_height</replaceable></term>
|
||||
<term><option>-N </option><replaceable>scr_height</replaceable></term>
|
||||
<listitem>
|
||||
<para>Set screen (frame-buffer) height to
|
||||
<emphasis remap="I">scr_height</emphasis>
|
||||
@@ -95,7 +97,7 @@ pixels.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-S</option><replaceable> scr_size</replaceable></term>
|
||||
<term><option>-S </option><replaceable>scr_size</replaceable></term>
|
||||
<listitem>
|
||||
<para>Set screen (frame-buffer) height and width to
|
||||
<emphasis remap="I">scr_size</emphasis>
|
||||
@@ -103,7 +105,7 @@ pixels.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-W</option><replaceable> scr_width</replaceable></term>
|
||||
<term><option>-W </option><replaceable>scr_width</replaceable></term>
|
||||
<listitem>
|
||||
<para>Set screen (frame-buffer) width to
|
||||
<emphasis remap="I">scr_width</emphasis>
|
||||
@@ -111,19 +113,22 @@ pixels.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-a</option><replaceable> u v</replaceable></term>
|
||||
<term><option>-a </option><replaceable>u</replaceable> <replaceable>v</replaceable></term>
|
||||
<listitem>
|
||||
<para>Plot only the portion of the npf between <emphasis remap="I">u</emphasis> and <emphasis remap="I">v</emphasis> degrees
|
||||
(i.e., <emphasis remap="I">u</emphasis> <= theta <= <emphasis remap="I">v</emphasis>).
|
||||
Default is <emphasis remap="I">u</emphasis> = 0, <emphasis remap="I">v</emphasis> = 360.</para>
|
||||
<para>Plot only the portion of the npf between <emphasis remap="I">u</emphasis> and <emphasis remap="I">v</emphasis> degrees inclusive
|
||||
(i.e., <emphasis remap="I">u</emphasis> <= theta <= <emphasis remap="I">v</emphasis>).
|
||||
Default is <emphasis remap="I">u</emphasis>=0, <emphasis remap="I">v</emphasis>=360.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-b</option><replaceable> r g b</replaceable></term>
|
||||
<term><option>-b</option>
|
||||
<emphasis remap="I">r</emphasis>
|
||||
<emphasis remap="I">g</emphasis>
|
||||
<emphasis remap="I">b</emphasis></term>
|
||||
<listitem>
|
||||
<para>Set the background color to
|
||||
(<emphasis remap="I">r</emphasis>, <emphasis remap="I">g</emphasis>, <emphasis remap="I">b</emphasis>).
|
||||
Default is (255, 255, 255) (i.e., white).</para>
|
||||
(<emphasis remap="I">r</emphasis>,<emphasis remap="I">g</emphasis>,<emphasis remap="I">b</emphasis>).
|
||||
Default is (255,255,255) (i.e., white).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
@@ -148,30 +153,27 @@ option.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-h</option></term>
|
||||
<listitem>
|
||||
<para>Use high-resolution mode.
|
||||
The frame buffer is 1024×1024 pixels.
|
||||
This has the same effect as
|
||||
<option>-S 1024 .</option></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-i</option><replaceable> r g b</replaceable></term>
|
||||
<term><option>-i</option>
|
||||
<emphasis remap="I">r</emphasis>
|
||||
<emphasis remap="I">g</emphasis>
|
||||
<emphasis remap="I">b</emphasis></term>
|
||||
<listitem>
|
||||
<para>Display the interior of the npf with constant color
|
||||
(<emphasis remap="I">r</emphasis>, <emphasis remap="I">g</emphasis>, <emphasis remap="I">b</emphasis>).</para>
|
||||
(<emphasis remap="I">r</emphasis>,<emphasis remap="I">g</emphasis>,<emphasis remap="I">b</emphasis>).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-l</option><replaceable> r g b</replaceable></term>
|
||||
<term><option>-l</option>
|
||||
<emphasis remap="I">r</emphasis>
|
||||
<emphasis remap="I">g</emphasis>
|
||||
<emphasis remap="I">b</emphasis></term>
|
||||
<listitem>
|
||||
<para>Display the interior of the npf in annular regions
|
||||
whose colors are a linear ramp from (0, 0, 0) at
|
||||
<emphasis remap="I">O,</emphasis>
|
||||
whose colors are a linear ramp from (0,0,0) at
|
||||
<emphasis remap="I">O</emphasis>,
|
||||
to
|
||||
(<emphasis remap="I">r</emphasis>, <emphasis remap="I">g</emphasis>, <emphasis remap="I">b</emphasis>)
|
||||
at rho = 1.</para>
|
||||
(<emphasis remap="I">r</emphasis>,<emphasis remap="I">g</emphasis>,<emphasis remap="I">b</emphasis>)
|
||||
at rho=1.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
@@ -193,7 +195,7 @@ will abort if it detects any irregularities in the input stream.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-o</option><replaceable> x y</replaceable></term>
|
||||
<term><option>-o </option><replaceable>x</replaceable> <replaceable>y</replaceable></term>
|
||||
<listitem>
|
||||
<para>Translate the graph, putting
|
||||
<emphasis remap="I">O</emphasis>
|
||||
@@ -201,20 +203,23 @@ at frame-buffer location (<emphasis remap="I">x</emphasis>, <emphasis remap="I">
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-p</option><replaceable> r g b</replaceable></term>
|
||||
<term><option>-p</option>
|
||||
<emphasis remap="I">r</emphasis>
|
||||
<emphasis remap="I">g</emphasis>
|
||||
<emphasis remap="I">b</emphasis></term>
|
||||
<listitem>
|
||||
<para>Plot the perimeter of the npf in the color
|
||||
(<emphasis remap="I">r</emphasis>, <emphasis remap="I">g</emphasis>, <emphasis remap="I">b</emphasis>).</para>
|
||||
(<emphasis remap="I">r</emphasis>,<emphasis remap="I">g</emphasis>,<emphasis remap="I">b</emphasis>).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-q</option><replaceable> q</replaceable></term>
|
||||
<term><option>-q </option><replaceable>q</replaceable></term>
|
||||
<listitem>
|
||||
<para>Set the angular quantum to
|
||||
<emphasis remap="I">q</emphasis> degrees.
|
||||
<emphasis remap="I">q</emphasis> degrees.
|
||||
The graph will consist of circular sectors, with the arc of each sector
|
||||
subtending an angle of
|
||||
<emphasis remap="I">q.Default is 1.</emphasis></para>
|
||||
<emphasis remap="I">q</emphasis>. Default is 1.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
@@ -225,18 +230,18 @@ Default is degrees.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-s</option><replaceable> s</replaceable></term>
|
||||
<term><option>-s </option><replaceable>s</replaceable></term>
|
||||
<listitem>
|
||||
<para>Scale the graph so that the unit radius is
|
||||
<emphasis remap="I">s</emphasis>
|
||||
pixels.
|
||||
The dimensions of the background region of the graph will be
|
||||
2<emphasis remap="I">s</emphasis>×2<emphasis remap="I">s</emphasis>
|
||||
2<emphasis remap="I">s</emphasis>x2<emphasis remap="I">s</emphasis>
|
||||
pixels.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-t</option><replaceable> t</replaceable></term>
|
||||
<term><option>-t </option><replaceable>t</replaceable></term>
|
||||
<listitem>
|
||||
<para>Rotate (twist) the npf
|
||||
<emphasis remap="I">t</emphasis>
|
||||
@@ -257,10 +262,10 @@ colored blue, green, yellow, orange, or red, depending on radius.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-z</option><replaceable> side</replaceable></term>
|
||||
<term><option>-z </option><replaceable>side</replaceable></term>
|
||||
<listitem>
|
||||
<para>Plot only one half of the graph.
|
||||
<emphasis remap="I">Side</emphasis>
|
||||
<para>Plot only one half of the graph;
|
||||
<emphasis remap="I">side</emphasis>
|
||||
may be either of the characters `l' or `r',
|
||||
which specify the left and right halves of the graph, respectively.
|
||||
This functionality could be duplicated through judicious combination
|
||||
|
||||
@@ -28,8 +28,13 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>random</emphasis>
|
||||
generates a random number between the two values given. The number
|
||||
<para><command>random</command>
|
||||
generates a random number between the two values given by
|
||||
<replaceable>low</replaceable>
|
||||
and
|
||||
<replaceable>high</replaceable>,
|
||||
which are required arguments.
|
||||
The number
|
||||
can be uniform across the entire range or it can be a gaussian
|
||||
distribution around the center of the range (or a named center).</para>
|
||||
|
||||
@@ -37,6 +42,8 @@ distribution around the center of the range (or a named center).</para>
|
||||
<option>-s</option>
|
||||
option specifies what integer seed to use to prime the random number
|
||||
generator.
|
||||
</para>
|
||||
<para>
|
||||
The
|
||||
<option>-u</option>
|
||||
option specifies that the random number distribution should be uniform
|
||||
@@ -48,6 +55,11 @@ gaussian distribution around a default or named center, specified with
|
||||
the
|
||||
<option>-c</option>
|
||||
option.
|
||||
If neither
|
||||
<option>-u</option> nor <option>-g</option>
|
||||
is specified, <option>-u</option> will be used.
|
||||
</para>
|
||||
<para>
|
||||
The
|
||||
<option>-v</option>
|
||||
option specifies verbose diagnostic output.</para>
|
||||
|
||||
@@ -19,9 +19,9 @@
|
||||
<arg choice="opt" rep="norepeat">-Ocd </arg>
|
||||
<arg choice="opt" rep="norepeat">-F <replaceable>framebuffer</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-C <replaceable>r/g/b</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-S <replaceable>squarescrsize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-W <replaceable>scr_width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-N <replaceable>scr_height</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-s|S <replaceable>squarescrsize</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-w|W <replaceable>scr_width</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-n|N <replaceable>scr_height</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-X <replaceable>scr_xoff</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-Y <replaceable>scr_yoff</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>file.rle</replaceable></arg>
|
||||
@@ -54,7 +54,7 @@ In the case where the RLE file contains a rectangle smaller than the
|
||||
screen, or where a portion of that rectangle has been positioned
|
||||
outside the bounds of the screen, then this program will only modify those
|
||||
screen pixels underneath the RLE image rectangle.
|
||||
While this is behavior can be a great boon when creating a montage of
|
||||
While this behavior can be a great boon when creating a montage of
|
||||
smaller images, it behooves the user to arrange for a suitable background.</para>
|
||||
|
||||
<para>If the screen size is explicitly specified by a command line option,
|
||||
@@ -74,19 +74,19 @@ command line options, as well as by using
|
||||
<emphasis remap="I">repos(1)</emphasis>.</para>
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-W </option><replaceable>scr_width</replaceable></term>
|
||||
<term><option>-w|W </option><replaceable>scr_width</replaceable></term>
|
||||
<listitem>
|
||||
<para>specifies the desired width of the screen, in pixels.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-N </option><replaceable>scr_height</replaceable></term>
|
||||
<term><option>-n|N </option><replaceable>scr_height</replaceable></term>
|
||||
<listitem>
|
||||
<para>specifies the desired height of the screen, in scanlines.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-S </option><replaceable>squarescrsize</replaceable></term>
|
||||
<term><option>-s|S </option><replaceable>squarescrsize</replaceable></term>
|
||||
<listitem>
|
||||
<para>sets the screen width and height to the indicated value.</para>
|
||||
</listitem>
|
||||
@@ -135,11 +135,11 @@ image decoding process, written on standard error.</para>
|
||||
<para>Restores the image data in <emphasis remap="I">overlay</emphasis> mode.
|
||||
Only areas of the original image which were not the background color are
|
||||
decoded. The rest of the image already in the frame buffer is undisturbed.
|
||||
That this mode uses twice as many DMAs to the frame buffer as
|
||||
Note that this mode uses twice as many DMAs to the frame buffer as
|
||||
the normal mode.
|
||||
This is because each scanline of the
|
||||
previous image must be read from the framebuffer,
|
||||
the overlay portions of the new image written on top,
|
||||
the overlay portions of the new image must be written on top,
|
||||
and the composite scanline must be written back to the framebuffer.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -216,12 +216,10 @@ are used.</para>
|
||||
|
||||
<refsection xml:id="examples"><title>EXAMPLES</title>
|
||||
<blockquote remap="RS">
|
||||
<para>rle-fb truck.rle
|
||||
<!-- .br -->
|
||||
rle-fb -O text.rle
|
||||
<!-- .br -->
|
||||
rle-fb -C 0/255/0 <car.rle
|
||||
</para></blockquote> <!-- remap='RE' -->
|
||||
<para>rle-fb truck.rle</para>
|
||||
<para>rle-fb -O text.rle</para>
|
||||
<para>rle-fb -C 0/255/0 <car.rle</para>
|
||||
</blockquote> <!-- remap='RE' -->
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="diagnostics"><title>DIAGNOSTICS</title>
|
||||
|
||||
@@ -17,21 +17,18 @@
|
||||
<refsynopsisdiv xml:id='synopsis'>
|
||||
<cmdsynopsis>
|
||||
<command>rle-pix</command>
|
||||
<arg choice='opt'>-cdhH </arg>
|
||||
<arg choice='opt'>-cdH </arg>
|
||||
<arg choice='opt'>-C <replaceable>r/g/b</replaceable></arg>
|
||||
<arg choice='opt'>-s <replaceable>squareoutsize</replaceable></arg>
|
||||
<arg choice='opt'>-w <replaceable>out_width</replaceable></arg>
|
||||
<arg choice='opt'>-n <replaceable>out_height</replaceable></arg>
|
||||
<arg choice='opt'>-S <replaceable>squareoutsize</replaceable></arg>
|
||||
<arg choice='opt'>-W <replaceable>out_width</replaceable></arg>
|
||||
<arg choice='opt'>-N <replaceable>out_height</replaceable></arg>
|
||||
<arg choice='opt'>-s|S <replaceable>squareoutsize</replaceable></arg>
|
||||
<arg choice='opt'>-w|W <replaceable>out_width</replaceable></arg>
|
||||
<arg choice='opt'>-n|N <replaceable>out_height</replaceable></arg>
|
||||
<arg choice='opt'><arg choice='plain'><replaceable>file.rle</replaceable></arg><arg choice='opt'><replaceable>file.pix</replaceable></arg></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>rle-fb</emphasis>
|
||||
<para><command>rle-pix</command>
|
||||
decodes a Utah Raster Toolkit
|
||||
Run-Length Encoded (RLE) format file
|
||||
(saved with
|
||||
@@ -44,7 +41,7 @@ format, and writes it to standard out.
|
||||
If
|
||||
<emphasis remap='I'>file.rle</emphasis>
|
||||
is not specified, standard input is read.
|
||||
<emphasis remap='I'>rle-pix</emphasis>
|
||||
<command>rle-pix</command>
|
||||
determines the type and size of the saved file (color or B&W)
|
||||
and acts accordingly.</para>
|
||||
<variablelist remap='TP'>
|
||||
@@ -62,12 +59,12 @@ any color map stored in the RLE file.</para>
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<listitem>
|
||||
<para>Debug option, provides a description of the parameters of the
|
||||
<para>Debug option; provides a description of the parameters of the
|
||||
saved RLE image on standard error.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-C</option><replaceable>r/g/b</replaceable></term>
|
||||
<term><option>-C </option><replaceable>r/g/b</replaceable></term>
|
||||
<listitem>
|
||||
<para>The background of the image is
|
||||
normally set to the value recorded in the RLE file.
|
||||
@@ -75,6 +72,30 @@ This option permits
|
||||
the user to specify an alternate background color
|
||||
as slash separated decimal numbers in the range of 0 to 255,
|
||||
one each for the red, green, and blue channels.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-w|W </option><replaceable>out_width</replaceable></term>
|
||||
<listitem>
|
||||
<para>This sets the output width.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-n|N </option><replaceable>out_height</replaceable></term>
|
||||
<listitem>
|
||||
<para>This sets the output height.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-s|S </option><replaceable>squareoutsize</replaceable></term>
|
||||
<listitem>
|
||||
<para>This sets the output width and output height to the same value.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-H</option></term>
|
||||
<listitem>
|
||||
<para>Print only the header.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<refsection xml:id="description"><title>DESCRIPTION</title>
|
||||
|
||||
<para>
|
||||
<emphasis remap="I">Rt</emphasis> operates on the indicated
|
||||
<command>rt</command> operates on the indicated
|
||||
<emphasis remap="I">objects</emphasis> in the input
|
||||
<emphasis remap="I">model.g</emphasis> and produces a color-shaded image
|
||||
as the output. By default, the output is placed on the current framebuffer
|
||||
@@ -55,19 +55,19 @@
|
||||
<para>The following options are recognized:</para>
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-a#</option></term>
|
||||
<term><option>-a #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
selects auto-sizing, and gives the view azimuth in degrees. Used with
|
||||
<option>-e</option>
|
||||
and conflicts with
|
||||
<option>-M</option>
|
||||
<option>-M </option>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-b # #</option></term>
|
||||
<term><option>-b "# #"</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
is sometimes useful for debugging. A single ray is fired at the pixel
|
||||
@@ -95,7 +95,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-d#</option></term>
|
||||
<term><option>-d #</option></term>
|
||||
<listitem>
|
||||
<para>turns on the reporting of pixel distances, so that each pixel is
|
||||
represented by 3 bytes of color information followed by 8 bytes for a
|
||||
@@ -112,17 +112,17 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-e#</option></term>
|
||||
<term><option>-e #</option></term>
|
||||
<listitem>
|
||||
<para>selects auto-sizing, and gives the view elevation in degrees. Used with
|
||||
<option>-a</option>
|
||||
and conflicts with
|
||||
<option>-M</option></para>
|
||||
<option>-M </option>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-f#</option></term>
|
||||
<term><option>-f #</option></term>
|
||||
<listitem>
|
||||
<para>sets the expected playback rate in frames-per-second.
|
||||
The default is 30fps.
|
||||
@@ -137,7 +137,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-g#</option></term>
|
||||
<term><option>-g #</option></term>
|
||||
<listitem>
|
||||
<para>is used to set the grid cell width, in millimeters.
|
||||
Ordinarily, the cell width is computed by dividing the view size by
|
||||
@@ -185,10 +185,9 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-j</option></term>
|
||||
<term><option>-j xmin,ymin,xmax,ymax</option></term>
|
||||
<listitem>
|
||||
<para><emphasis remap="B" role="B">xmin,ymin,xmax,ymax</emphasis>
|
||||
enables <emphasis remap="I">just this sub-rectangle</emphasis> processing.
|
||||
<para>enables <emphasis remap="I">just this sub-rectangle</emphasis> processing.
|
||||
Specifies the screen coordinates of the lower left and upper right
|
||||
corner of a rectangle within the rectangle (0,0) (width-1,height-1).
|
||||
Ray-tracing will be limited to just those pixels within the sub-rectangle,
|
||||
@@ -217,7 +216,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-l#</option></term>
|
||||
<term><option>-l #</option></term>
|
||||
<listitem>
|
||||
<para>Select lighting model. Default is 0.
|
||||
Model 0 is a full lighting model with the ability to implement
|
||||
@@ -259,16 +258,16 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-n#</option></term>
|
||||
<term><option>-n #</option></term>
|
||||
<listitem>
|
||||
<para>defines the height of the image as a number of scanlines.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>-o output.pix</option></term>
|
||||
<listitem>
|
||||
<para><emphasis remap="B" role="B">output.pix</emphasis>
|
||||
<para>
|
||||
Specify the name of a file to store the
|
||||
<citerefentry><refentrytitle>pix</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format output.
|
||||
@@ -279,7 +278,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-p#</option></term>
|
||||
<term><option>-p #</option></term>
|
||||
<listitem>
|
||||
<para>Sets the perspective, in degrees, ranging 0 < = # < 180.</para>
|
||||
</listitem>
|
||||
@@ -293,7 +292,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-s#</option></term>
|
||||
<term><option>-s #</option></term>
|
||||
<listitem>
|
||||
<para>specifies the
|
||||
number of rays to fire in the X and Y directions on a square grid.
|
||||
@@ -302,7 +301,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-v#</option></term>
|
||||
<term><option>-v #</option></term>
|
||||
<listitem>
|
||||
<para>sets the verbosity bit vector flags for rt.
|
||||
Use -v 0 for no output or -v fff for all available output.
|
||||
@@ -311,14 +310,14 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-w#</option></term>
|
||||
<term><option>-w #</option></term>
|
||||
<listitem>
|
||||
<para>defines the width of each scanline in pixels.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-x#</option></term>
|
||||
<term><option>-x #</option></term>
|
||||
<listitem>
|
||||
<para>sets the
|
||||
<citerefentry><refentrytitle>librt</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
@@ -333,7 +332,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-A#</option></term>
|
||||
<term><option>-A #</option></term>
|
||||
<listitem>
|
||||
<para>sets the ambient light intensity,
|
||||
as a fraction of the total light in the scene
|
||||
@@ -351,7 +350,7 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-C#/#/#</option></term>
|
||||
<term><option>-C #/#/#</option></term>
|
||||
<listitem>
|
||||
<para>sets the background color to the RGB value #/#/#, where each #
|
||||
is in the range of 0 to 255.
|
||||
@@ -360,16 +359,16 @@
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-D#</option></term>
|
||||
<term><option>-D #</option></term>
|
||||
<listitem>
|
||||
<para>The "desired frame" flag, specifies frame number to start with.
|
||||
Specify the desired ending (kill-after) frame with
|
||||
<option>-K#</option></para>
|
||||
<option>-K #</option></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-E#</option></term>
|
||||
<term><option>-E #</option></term>
|
||||
<listitem>
|
||||
<para>sets the distance from the eye point to the center of the model RPP.
|
||||
Only useful with auto-sizing, conflicts with
|
||||
@@ -387,13 +386,13 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-G#</option></term>
|
||||
<term><option>-G #</option></term>
|
||||
<listitem>
|
||||
<para>sets the grid cell height, in millimeters.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-H#</option></term>
|
||||
<term><option>-H #</option></term>
|
||||
<listitem>
|
||||
<para>The "hypersample" flag specifies number of extra rays to fire
|
||||
for each pixel to obtain more accurate results
|
||||
@@ -415,7 +414,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-J#</option></term>
|
||||
<term><option>-J #</option></term>
|
||||
<listitem>
|
||||
<para>The "jitter" flag is a bit vector.
|
||||
If one (-J1), it randomizes the point from which each ray
|
||||
@@ -430,11 +429,11 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-K#</option></term>
|
||||
<term><option>-K #</option></term>
|
||||
<listitem>
|
||||
<para>sets the final (kill-after) frame number.
|
||||
Used with animation scripts in conjunction with
|
||||
<option>-D#</option></para>
|
||||
<option>-D #</option></para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
@@ -448,7 +447,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-N#</option></term>
|
||||
<term><option>-N #</option></term>
|
||||
<listitem>
|
||||
<para>Sets the NMG_debug flags to the given hexadecimalbit vector.
|
||||
See h/nmg.h for the bit definitions.</para>
|
||||
@@ -468,7 +467,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-P#</option></term>
|
||||
<term><option>-P #</option></term>
|
||||
<listitem>
|
||||
<para>Specify the maximum number of processors (in a multi-processor system) to be
|
||||
used for this execution. The default is system dependent.
|
||||
@@ -505,12 +504,12 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-T#</option></term>
|
||||
<term><option>-T #</option></term>
|
||||
<listitem>
|
||||
<para>or
|
||||
<option>-T#,#</option>
|
||||
<option>-T #,#</option>
|
||||
or
|
||||
<option>-T#/#</option>
|
||||
<option>-T #/#</option>
|
||||
Sets the calculation tolerances used by
|
||||
<citerefentry><refentrytitle>librt</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
If only one number is given, it specifies the distance tolerance.
|
||||
@@ -528,14 +527,14 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-U#</option></term>
|
||||
<term><option>-U #</option></term>
|
||||
<listitem>
|
||||
<para>Sets the "use_air" value.
|
||||
The default is 0, which ignores regions that have non-zero aircode values.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-V#</option></term>
|
||||
<term><option>-V #</option></term>
|
||||
<listitem>
|
||||
<para>Sets the view aspect. This is the ratio of width over height and can
|
||||
be specified as either a fraction or a colon-separated ratio.
|
||||
@@ -552,7 +551,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-X#</option></term>
|
||||
<term><option>-X #</option></term>
|
||||
<listitem>
|
||||
<para>Turns on the
|
||||
<citerefentry><refentrytitle>rt</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
|
||||
@@ -26,12 +26,12 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Rt_Bot_Faces</emphasis>
|
||||
<para><command>rt_bot_faces</command>
|
||||
operates on the indicated
|
||||
<emphasis remap='I'>objects</emphasis>
|
||||
in the input
|
||||
<emphasis remap='I'>model.g</emphasis>
|
||||
and fires rays (the same as RT) keeping a list of all the first-hit BOT facets.</para>
|
||||
and fires rays (the same as <command>rt</command>), keeping a list of all the first-hit BOT facets.</para>
|
||||
|
||||
<para>The orientation of the rays to be fired may be specified by
|
||||
the
|
||||
@@ -64,14 +64,14 @@ conflict was not avoided.</para>
|
||||
<para>The following options are recognized.</para>
|
||||
<variablelist remap='TP'>
|
||||
<varlistentry>
|
||||
<term><option>-s#</option></term>
|
||||
<term><option>-s #</option></term>
|
||||
<listitem>
|
||||
<para>Number of rays to fire in X and Y directions (square grid).
|
||||
Default is 512 (512x512).</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-a#</option></term>
|
||||
<term><option>-a #</option></term>
|
||||
<listitem>
|
||||
<para>Select azimuth in degrees. Used with
|
||||
<option>-e</option>
|
||||
@@ -80,7 +80,7 @@ and conflicts with
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-e#</option></term>
|
||||
<term><option>-e #</option></term>
|
||||
<listitem>
|
||||
<para>Select elevation in degrees. Used with
|
||||
<option>-a</option>
|
||||
@@ -99,7 +99,7 @@ and
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-g#</option></term>
|
||||
<term><option>-g #</option></term>
|
||||
<listitem>
|
||||
<para>Select grid cell width. Do not use with the
|
||||
<option>-s#</option>
|
||||
@@ -107,7 +107,7 @@ option.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-G#</option></term>
|
||||
<term><option>-G #</option></term>
|
||||
<listitem>
|
||||
<para>Select grid cell height. If <emphasis remap='I'>not</emphasis> specified, cell height equals
|
||||
cell width. Do not use with the
|
||||
@@ -148,7 +148,7 @@ and the output file is overwritten with the accumulated data.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-x#</option></term>
|
||||
<term><option>-x #</option></term>
|
||||
<listitem>
|
||||
<para>Set librt debug flags to (hexadecimal) number.</para>
|
||||
</listitem>
|
||||
@@ -195,7 +195,7 @@ will be placed in "file".</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id='overlap_reporting'><title>OVERLAP REPORTING</title>
|
||||
<para><emphasis remap='I'>RT_BOT_FACES</emphasis> shares overlap handling and reporting with the rest of the
|
||||
<para><command>rt_bot_faces</command> shares overlap handling and reporting with the rest of the
|
||||
<emphasis remap='I'>RT</emphasis> family of applications. A brief description of the overlap
|
||||
reporting follows.</para>
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Rthide</emphasis>
|
||||
<para><command>rthide</command>
|
||||
operates on the indicated
|
||||
<emphasis remap='I'>objects</emphasis>
|
||||
in the input
|
||||
@@ -48,7 +48,7 @@ and
|
||||
options, in which case the model will be autosized, and the grid
|
||||
will be centered on the centroid of the model, with ray spacing
|
||||
chosen to span the entire set of
|
||||
<emphasis remap='I'>objects.</emphasis>
|
||||
<emphasis remap='I'>objects</emphasis>.
|
||||
Alternatively,
|
||||
with the
|
||||
<option>-M</option>
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<refsection xml:id="rtwizard_description"><title>DESCRIPTION</title>
|
||||
|
||||
<para>
|
||||
<emphasis remap="I">rtwizard</emphasis> is a tool that automates the use of several
|
||||
<command>rtwizard</command> is a tool that automates the use of several
|
||||
BRL-CAD graphical programs to produce complex images. There are two primary modes of operation -
|
||||
a graphical client to guide users through the process of creating images, and
|
||||
a command line mode to allow users who already know what options they wish to
|
||||
@@ -46,7 +46,7 @@
|
||||
|
||||
<para>
|
||||
When specifying options on the command line, it is usually better to fully qualify what a particular item is - for example,
|
||||
using <option>-i</option> to specifically identify the input file instead of relying on the .g suffix. There is a limited ability to recoginze
|
||||
using <option>-i</option> to specifically identify the input file instead of relying on the .g suffix. There is a limited ability to recognize
|
||||
common usage patterns (for example, "<command>rtwizard</command> file.g output_image.png geometry_object" will
|
||||
generate an image of geometry_object in the file output_image.png) but the potentially general nature of some of the option arguments can
|
||||
easily result in ambiguous cases. For example, "<command>rtwizard</command> -c car.g old_car.g car.png" could be interpreted as
|
||||
@@ -488,7 +488,7 @@
|
||||
|
||||
<para>Most deficiencies observed while using the <command>rtwizard</command>
|
||||
program are a consequence of problems in commands used by rtwizard to generate
|
||||
images, such as rtedge</para>
|
||||
images, such as rtedge.</para>
|
||||
</refsection>
|
||||
|
||||
<refsection xml:id="bug_reports"><title>BUG REPORTS</title>
|
||||
|
||||
@@ -18,17 +18,18 @@
|
||||
<cmdsynopsis>
|
||||
<command>sun-pix</command>
|
||||
<arg choice='opt'>-b </arg>
|
||||
<arg choice='opt'>-h </arg>
|
||||
<arg choice='opt'>-H </arg>
|
||||
<arg choice='opt'>-i </arg>
|
||||
<arg choice='opt'>-P </arg>
|
||||
<arg choice='opt'>-v </arg>
|
||||
<arg choice='opt'>-C </arg>
|
||||
<arg choice='opt'><replaceable>sun.bitmap</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1 xml:id='description'><title>DESCRIPTION</title>
|
||||
<para><emphasis remap='I'>Sun-pix</emphasis>
|
||||
<para><command>sun-pix</command>
|
||||
is a program to take Sun bitmap files created with Sun's
|
||||
<citerefentry><refentrytitle>screendump</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
command, and convert them to a
|
||||
@@ -37,16 +38,17 @@ format file. If the
|
||||
<option>-b</option>
|
||||
flag is specified, a
|
||||
<citerefentry><refentrytitle>bw</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
format file is created instead.
|
||||
The dimensions of the input file are the dimensions of the output
|
||||
file; invoking
|
||||
format file is created instead. Note that
|
||||
<command>sun-pix</command>
|
||||
with the
|
||||
<option>-h</option>
|
||||
flag will cause the size of the image to be printed without further
|
||||
processing of the input, or generation of any other output.
|
||||
The image size is output as a pair
|
||||
of command line options (<emphasis remap='I'>i.e.,</emphasis><emphasis remap='B'> -w1152 -n900</emphasis>) suitable
|
||||
will refuse to write to a terminal; its output must be redirected unless it's invoked with the
|
||||
<option>-H</option>
|
||||
flag. The dimensions of the input file are the dimensions of the output
|
||||
file, and use of the
|
||||
<option>-H</option>
|
||||
flag will cause the image size to be printed without further
|
||||
processing of the input, or generation of any other output;
|
||||
the image size is output as a pair
|
||||
of command line options (<emphasis remap='I'>i.e.</emphasis>,<emphasis remap='B'> -w1152 -n900</emphasis>) suitable
|
||||
for use with other
|
||||
<citerefentry><refentrytitle>brlcad</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tools such as
|
||||
@@ -73,6 +75,10 @@ flag indicates that the input is a pure bitmap with no Sun-style header
|
||||
on it. The first bit to be processed will be the most significant bit (MSB),
|
||||
<emphasis remap='I'>i.e.</emphasis>, the left-most bit in the byte.</para>
|
||||
|
||||
<para>The
|
||||
<option>-C</option>
|
||||
flag indicates that the color map is to be output.</para>
|
||||
|
||||
<para>Note that the input file is expected to be in Sun ("network") byte order
|
||||
(<emphasis remap='I'>i.e.</emphasis>, "big-endian", with byte 0 on the left), regardless
|
||||
of the byte order of the machine running this program.</para>
|
||||
|
||||
@@ -24,9 +24,10 @@
|
||||
|
||||
|
||||
<refsect1 xml:id="description"><title>DESCRIPTION</title>
|
||||
<literallayout>The wdb_example program creates a BRL-CAD geometry database from C code. This database contains a sphere centered a 0,0,0, an rpp under it and a union of both objects.
|
||||
Note that this is for writing a database and not modifying it. Currently, there is no API for modifying the database. Also note that the values in the database are stored in millimeters.
|
||||
</literallayout>
|
||||
<para>The wdb_example program creates a BRL-CAD geometry database from C code. This database contains a sphere centered at 0,0,0; an rpp under it; and a union of both objects.
|
||||
</para>
|
||||
<para>Note that this is for writing a database and not modifying it. Currently, there is no API for modifying the database. Also note that the values in the database are stored in millimeters.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1 xml:id="examples">
|
||||
|
||||
@@ -22,10 +22,10 @@
|
||||
<funcsynopsis>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef><function>FBIO</function> *fb_open</funcdef>
|
||||
<funcdef><function>fb</function> *fb_open</funcdef>
|
||||
<paramdef>* <parameter>fbfile</parameter></paramdef>
|
||||
<paramdef>int fb_close ( fbp ) FBIO * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_read ( fbp , x , y , addr , count ) FBIO * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_close ( fbp ) fb * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_read ( fbp , x , y , addr , count ) fb * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>RGBpixel <parameter>*addr;</parameter></paramdef>
|
||||
<paramdef>long <parameter>count;</parameter></paramdef>
|
||||
</funcprototype>
|
||||
@@ -35,7 +35,7 @@
|
||||
<paramdef>* <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>RGBpixel * <parameter>addr</parameter></paramdef>
|
||||
<paramdef>long <parameter>count</parameter></paramdef>
|
||||
<paramdef>int fb_rmap ( fbp , cmap ) FBIO * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_rmap ( fbp , cmap ) fb * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>ColorMap * <parameter>cmap</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
@@ -78,8 +78,8 @@
|
||||
<funcprototype>
|
||||
<funcdef>int <function>fb_cursor</function></funcdef>
|
||||
<paramdef>* <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_scursor ( fbp , mode , x , y ) FBIO * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_setcursor ( fbp , bits , xbits , ybits , xorig , yorig ) FBIO * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_scursor ( fbp , mode , x , y ) fb * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_setcursor ( fbp , bits , xbits , ybits , xorig , yorig ) fb * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>unsigned char <parameter>bits</parameter>[]</paramdef>
|
||||
<paramdef>int <parameter>xbits</parameter>, <parameter>ybits</parameter>;</paramdef>
|
||||
<paramdef>int <parameter>xorig</parameter>, <parameter>yorig</parameter>;</paramdef>
|
||||
@@ -88,14 +88,14 @@
|
||||
<funcprototype>
|
||||
<funcdef>int <function>fb_window</function></funcdef>
|
||||
<paramdef>* <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_zoom ( fbp , x , y ) FBIO * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>/ *Buffered frame buffer I/O: */ int fb_ioinit ( fbp ) FBIO * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int fb_zoom ( fbp , x , y ) fb * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>/ *Buffered frame buffer I/O: */ int fb_ioinit ( fbp ) fb * <parameter>fbp</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>fb_seek</function></funcdef>
|
||||
<paramdef>* <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>void fb_tell ( fbp , xp , yp ) FBIO * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>void fb_tell ( fbp , xp , yp ) fb * <parameter>fbp</parameter></paramdef>
|
||||
<paramdef>int *xp , * <parameter>yp</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
@@ -168,10 +168,10 @@
|
||||
See below for more details. The <emphasis remap="I">width</emphasis>
|
||||
and <emphasis remap="I">height</emphasis> parameters specify the initial
|
||||
size of display desired. If these are zero the default sizes for that
|
||||
device will be used. On a successful open, the frame buffer I/O (FBIO)
|
||||
device will be used. On a successful open, the frame buffer I/O (fb)
|
||||
structure pointer is returned. This structure contains size you were
|
||||
actually given, as well as the maximum possible size for the selected
|
||||
device. A return of FBIO_NULL indicates failure.
|
||||
device. A return of fb_NULL indicates failure.
|
||||
</para>
|
||||
<para><emphasis remap="I">Fb_close</emphasis> simply closes the frame buffer.
|
||||
</para>
|
||||
@@ -214,11 +214,11 @@
|
||||
</para>
|
||||
<para><emphasis remap="I">Fb_gettype</emphasis>
|
||||
returns a pointer to a string describing the frame buffer
|
||||
specified by the FBIO pointer.
|
||||
specified by the fb pointer.
|
||||
</para>
|
||||
<para><emphasis remap="I">Fb_getwidth</emphasis>
|
||||
and <emphasis remap="I">Fb_getheight</emphasis>
|
||||
returns the current size of the FBIO frame buffer.
|
||||
returns the current size of the fb frame buffer.
|
||||
</para>
|
||||
<para>
|
||||
The following routines work in conjunction with those described above
|
||||
@@ -433,7 +433,7 @@
|
||||
<emphasis remap="I">fb_flush</emphasis>
|
||||
return -1 to indicate failure.
|
||||
<emphasis remap="I">Fb_open</emphasis>
|
||||
returns FBIO_NULL to indicate failure, and a non-null FBIO structure pointer
|
||||
returns fb_NULL to indicate failure, and a non-null fb structure pointer
|
||||
upon success.
|
||||
<emphasis remap="I">fb_read</emphasis>,
|
||||
and
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-fname.g</option></term>
|
||||
<term><option>-f </option><replaceable>name.g</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
BRL-CAD file name.
|
||||
@@ -57,7 +57,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-n#</option></term>
|
||||
<term><option>-n #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The number of bolts to be created. This number must be less than or equal to
|
||||
@@ -66,15 +66,15 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-hd#</option></term>
|
||||
<term><option>-hd #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Diameter of bolt head flat edge to flat edge in millimeters.
|
||||
Diameter of bolt head, flat edge to flat edge, in millimeters.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-hh#</option></term>
|
||||
<term><option>-hh #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Height of bolt head in millimeters.
|
||||
@@ -82,7 +82,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-wd#</option></term>
|
||||
<term><option>-wd #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Diameter of washer in millimeters.
|
||||
@@ -90,7 +90,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-wh#</option></term>
|
||||
<term><option>-wh #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Height of washer in millimeters.
|
||||
@@ -98,7 +98,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-sd#</option></term>
|
||||
<term><option>-sd #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Diameter of bolt stem in millimeters.
|
||||
@@ -106,7 +106,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-sh#</option></term>
|
||||
<term><option>-sh #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Height of bolt stem in millimeters.
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-fname.g</option></term>
|
||||
<term><option>-f </option><replaceable>name.g</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
BRL-CAD file name.
|
||||
@@ -51,7 +51,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-n#</option></term>
|
||||
<term><option>-n #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The number of gas tanks to be created (must be less than or equal to 26).
|
||||
@@ -59,7 +59,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-H#</option></term>
|
||||
<term><option>-H #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Height of gas tank in millimeters.
|
||||
@@ -67,7 +67,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-w#</option></term>
|
||||
<term><option>-w #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Width of gas tank in millimeters.
|
||||
@@ -75,7 +75,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-d#</option></term>
|
||||
<term><option>-d #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Depth of gas tank in millimeters.
|
||||
@@ -83,7 +83,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-r#</option></term>
|
||||
<term><option>-r #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Radius of the corner in millimeters.
|
||||
@@ -126,7 +126,7 @@ number of gas tanks: 3
|
||||
<example><title>Single-Line <command>gastank</command> Command</title>
|
||||
|
||||
<para>
|
||||
<userinput>gastank -fgastank.g -n3 -h300 -w200 -d400 -r30</userinput>
|
||||
<userinput>gastank -fgastank.g -n3 -H300 -w200 -d400 -r30</userinput>
|
||||
</para>
|
||||
</example>
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-fname.g</option></term>
|
||||
<term><option>-f </option><replaceable>name.g</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
BRL-CAD file name.
|
||||
@@ -49,7 +49,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-n#</option></term>
|
||||
<term><option>-n #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The number of handles to be creates (must be less than or equal to 26).
|
||||
@@ -57,7 +57,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-l#</option></term>
|
||||
<term><option>-l #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Length of handle in millimeters.
|
||||
@@ -65,7 +65,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-H#</option></term>
|
||||
<term><option>-H #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Height of handle in millimeters.
|
||||
@@ -73,7 +73,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-r1#</option></term>
|
||||
<term><option>-r1 #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Radius, r1, of the tori in millimeters.
|
||||
@@ -81,7 +81,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-r2#</option></term>
|
||||
<term><option>-r2 #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Radius, r2, of the tori in millimeters.
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<arg choice="opt" rep="norepeat"><replaceable>xn</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>yn</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>zn</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat"><replaceable>-r</replaceable></arg>
|
||||
<arg choice="opt" rep="norepeat">-r</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
libwdb to create a BRL-CAD database. The windows are composed of two
|
||||
arb8s and four cylinders. This program may be run interactively or
|
||||
the user may specify options on a command line. If the user chooses to
|
||||
run the program interactively he answers the questions as the program
|
||||
run the program interactively, he answers the questions as the program
|
||||
prompts him. Below are the options that can be used on the command line.
|
||||
</para>
|
||||
</refsection>
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-fname.g</option></term>
|
||||
<term><option>-f </option><replaceable>name.g</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
BRL-CAD file name.
|
||||
@@ -49,15 +49,15 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-n#</option></term>
|
||||
<term><option>-n #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The number of windows to be created (must be less than or equal to 26.)
|
||||
The number of windows to be created (must be less than or equal to 26).
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-h#</option></term>
|
||||
<term><option>-H #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Height of window in millimeters.
|
||||
@@ -65,7 +65,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-w#</option></term>
|
||||
<term><option>-w #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Width of window in millimeters.
|
||||
@@ -73,7 +73,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-d#</option></term>
|
||||
<term><option>-d #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Depth of window in millimeters.
|
||||
@@ -81,7 +81,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-r#</option></term>
|
||||
<term><option>-r #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Radius of the corner in millimeters.
|
||||
@@ -124,7 +124,7 @@ number of windows: 3
|
||||
<example><title>Single-Line <command>window</command> Command</title>
|
||||
|
||||
<para>
|
||||
<userinput>window -fwindow.g -n3 -h200 -w300 -d20 -r30</userinput>
|
||||
<userinput>window -fwindow.g -n3 -H200 -w300 -d20 -r30</userinput>
|
||||
</para>
|
||||
</example>
|
||||
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
libwdb to create a BRL-CAD database. The window frames are composed of four
|
||||
arb8s and eight cylinders. This program may be run interactively or
|
||||
the user may specify options on a command line. If the user chooses to
|
||||
run the program interactively he answers the questions as the program
|
||||
run the program interactively, he answers the questions as the program
|
||||
prompts him. Below are the options that can be used on the command line.
|
||||
</para>
|
||||
</refsection>
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
<variablelist remap="TP">
|
||||
<varlistentry>
|
||||
<term><option>-fname.g</option></term>
|
||||
<term><option>-f </option><replaceable>name.g</replaceable></term>
|
||||
<listitem>
|
||||
<para>
|
||||
BRL-CAD file name.
|
||||
@@ -49,15 +49,15 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-n#</option></term>
|
||||
<term><option>-n #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The number of window frames to be created (must be less than or equal to 26.)
|
||||
The number of window frames to be created (must be less than or equal to 26).
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-h#</option></term>
|
||||
<term><option>-H #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Height of window frame in millimeters.
|
||||
@@ -65,7 +65,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-w#</option></term>
|
||||
<term><option>-w #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Width of window frame in millimeters.
|
||||
@@ -73,7 +73,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-d#</option></term>
|
||||
<term><option>-d #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Depth of window frame in millimeters.
|
||||
@@ -81,7 +81,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-r#</option></term>
|
||||
<term><option>-r #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Radius of the corner in millimeters.
|
||||
@@ -89,7 +89,7 @@
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-i#</option></term>
|
||||
<term><option>-i #</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Actual width of the frame in millimeters.
|
||||
@@ -135,7 +135,7 @@ number of window frames: 3
|
||||
<example><title>Single-Line <command>window_frame</command> Command</title>
|
||||
|
||||
<para>
|
||||
<userinput>window_frame -fwin.frm.g -n3 -h200 -w300 -d20 -r30 -i10</userinput>
|
||||
<userinput>window_frame -fwin.frm.g -n3 -H200 -w300 -d20 -r30 -i10</userinput>
|
||||
</para>
|
||||
</example>
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
ending points of the different segments of wires along with the radius at each
|
||||
of these points. Currently the program is limited to 10 segments. This
|
||||
number may be changed by changing the variable MAXSEG. MAXSEG may be no greater
|
||||
than 100 with out changing other parts of the program. The wires are composed
|
||||
than 100 without changing other parts of the program. The wires are composed
|
||||
of cones and spheres. This program is designed to be run interactively.
|
||||
</para>
|
||||
</refsection>
|
||||
@@ -75,7 +75,7 @@ Segment # 3: (0.000000, 10.000000, -3.000000) 0.250000
|
||||
</example>
|
||||
|
||||
<para>
|
||||
In this example a wire of three segments is made. These
|
||||
In this example, a wire of three segments is made. These
|
||||
segments are joined together with spheres. All dimensions
|
||||
are in millimeters.
|
||||
</para>
|
||||
|
||||
+2
-5
@@ -58,7 +58,6 @@ digraph BRLCADDeps{
|
||||
incrTcl [color = "blue", style = bold, shape = box, label = "IncrTcl"];
|
||||
|
||||
|
||||
boost [color = "blue", style = bold, shape = box, label = "Boost"];
|
||||
libpng [color = "blue", style = bold, shape = box, label = "libpng"];
|
||||
libregex [color = "blue", style = bold, shape = box, label = "libregex"];
|
||||
libtermlib [color = "blue", style = bold, shape = box, label = "libtermlib"];
|
||||
@@ -73,8 +72,8 @@ digraph BRLCADDeps{
|
||||
//re2clemon [color = "orange", style = bold, shape = box, label = "re2c + lemon"];
|
||||
re2c [color = "orange", style = bold, shape = box, label = "re2c"];
|
||||
lemon [color = "orange", style = bold, shape = box, label = "lemon"];
|
||||
//{ rank = same; "3rd Party Resources"; tcltk; tkhtml; tkpng; tktable; togl; incrTcl; boost; libpng; libregex; libtermlib; libutahrle; opennurbs; scl; tnt; xsl; zlib; re2clemon; }
|
||||
{ rank = same; "3rd Party Resources"; tcltk; tkhtml; tkpng; tktable; togl; incrTcl; boost; libpng; libregex; libtermlib; libutahrle; opennurbs; scl; tnt; xsl; zlib; re2c; lemon; }
|
||||
//{ rank = same; "3rd Party Resources"; tcltk; tkhtml; tkpng; tktable; togl; incrTcl; libpng; libregex; libtermlib; libutahrle; opennurbs; scl; tnt; xsl; zlib; re2clemon; }
|
||||
{ rank = same; "3rd Party Resources"; tcltk; tkhtml; tkpng; tktable; togl; incrTcl; libpng; libregex; libtermlib; libutahrle; opennurbs; scl; tnt; xsl; zlib; re2c; lemon; }
|
||||
// GSoC
|
||||
osl [color = "purple", style = bold, shape = box, label = "Open Shader Language (GSoC)"];
|
||||
oiio [color = "purple", style = bold, shape = box, label = "OpenImageIO (GSoC)"];
|
||||
@@ -135,7 +134,6 @@ digraph BRLCADDeps{
|
||||
libbu -> libpng;
|
||||
libbu -> zlib;
|
||||
|
||||
libpc -> boost;
|
||||
libpc -> opennurbs;
|
||||
|
||||
librt -> libregex;
|
||||
@@ -183,7 +181,6 @@ digraph BRLCADDeps{
|
||||
geomconv -> libtclcad;
|
||||
geomconv -> libged;
|
||||
geomconv -> scl;
|
||||
geomconv -> boost;
|
||||
geomconv -> lemon;
|
||||
geomconv -> re2c;
|
||||
|
||||
|
||||
@@ -3850,7 +3850,7 @@ view_pixel(ap)
|
||||
register struct application *ap;
|
||||
{
|
||||
....
|
||||
if( fbp != FBIO_NULL ) {
|
||||
if( fbp != fb_NULL ) {
|
||||
/* Framebuffer output */
|
||||
RES_ACQUIRE( &rt_g.res_syscall );
|
||||
fb_write( fbp, ap->a_x, ap->a_y, (char *)p, 1 );
|
||||
@@ -3891,7 +3891,7 @@ followed a little later by the actual output section:
|
||||
|
||||
<p>
|
||||
case BUFMODE_DYNAMIC:
|
||||
if( fbp != FBIO_NULL ) {
|
||||
if( fbp != fb_NULL ) {
|
||||
RES_ACQUIRE( &rt_g.res_syscall );
|
||||
fb_write( fbp, 0, ap->a_y,
|
||||
scanline[ap->a_y].sl_buf, width );
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
add_subdirectory(bu)
|
||||
add_subdirectory(dm)
|
||||
add_subdirectory(rt)
|
||||
add_subdirectory(fb)
|
||||
|
||||
set(public_hdrs
|
||||
RtServerImpl.h
|
||||
@@ -27,7 +28,6 @@ set(public_hdrs
|
||||
dm.h
|
||||
dvec.h
|
||||
fb.h
|
||||
fbio.h
|
||||
fbserv_obj.h
|
||||
fft.h
|
||||
gcv.h
|
||||
|
||||
+15
-1
@@ -192,6 +192,21 @@ __BEGIN_DECLS
|
||||
|
||||
#define GED_CMD_MAGIC 0x65786563 /**< exec */
|
||||
|
||||
/* fb */
|
||||
|
||||
#define FB_MAGIC 0xfbfb00fb /**< ???? */
|
||||
#define FB_WGL_MAGIC 0x574f4642 /**< WOFB */
|
||||
#define FB_OGL_MAGIC 0x584f4642 /**< XOFB */
|
||||
#define FB_X24_MAGIC 0x58324642 /**< X2FB */
|
||||
#define FB_TK_MAGIC 0x544b4642 /**< TKFB */
|
||||
#define FB_QT_MAGIC 0x51544642 /**< QTFB */
|
||||
#define FB_DEBUG_MAGIC 0x44424642 /**< DBFB */
|
||||
#define FB_DISK_MAGIC 0x44494642 /**< STFB */
|
||||
#define FB_STK_MAGIC 0x53544642 /**< STFB */
|
||||
#define FB_MEMORY_MAGIC 0x4d454642 /**< MEFB */
|
||||
#define FB_REMOTE_MAGIC 0x524d4642 /**< MEFB */
|
||||
#define FB_NULL_MAGIC 0x4e554642 /**< NUFB */
|
||||
|
||||
/* misc */
|
||||
|
||||
#define ANIMATE_MAGIC 0x414e4963 /**< ANIc */
|
||||
@@ -202,7 +217,6 @@ __BEGIN_DECLS
|
||||
#define DB5_RAW_INTERNAL_MAGIC 0x64357269 /**< d5ri */
|
||||
#define DBI_MAGIC 0x57204381 /**< W C? */
|
||||
#define DB_FULL_PATH_MAGIC 0x64626670 /**< dbfp */
|
||||
#define FB_MAGIC 0xfbfb00fb /**< ???? */
|
||||
#define LIGHT_MAGIC 0xdbddbdb7 /**< ???? */
|
||||
#define MF_MAGIC 0x55968058 /**< U??X */
|
||||
#define PIXEL_EXT_MAGIC 0x50787400 /**< Pxt */
|
||||
|
||||
+1
-1
@@ -248,7 +248,7 @@ struct dm {
|
||||
int (*dm_getDisplayImage)(struct dm *dmp, unsigned char **image);
|
||||
void (*dm_reshape)(struct dm *dmp, int width, int height);
|
||||
int (*dm_makeCurrent)(struct dm *dmp);
|
||||
int (*dm_openFb)(struct dm *dmp, FBIO *ifp);
|
||||
int (*dm_openFb)(struct dm *dmp, fb *ifp);
|
||||
unsigned long dm_id; /**< @brief window id */
|
||||
int dm_displaylist; /**< @brief !0 means device has displaylist */
|
||||
int dm_stereo; /**< @brief stereo flag */
|
||||
|
||||
@@ -187,7 +187,7 @@ null_processEvents(struct dm *dmp);
|
||||
|
||||
|
||||
DM_EXPORT extern int
|
||||
null_openFb(struct dm *dmp, FBIO *ifp);
|
||||
null_openFb(struct dm *dmp, fb *ifp);
|
||||
|
||||
__END_DECLS
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
# include <QWindow>
|
||||
# include <QBackingStore>
|
||||
# include <QResizeEvent>
|
||||
# include <QImage>
|
||||
|
||||
class QTkMainWindow: public QWindow {
|
||||
|
||||
@@ -68,6 +69,8 @@ struct qt_vars {
|
||||
QPainter *painter;
|
||||
QFont *font;
|
||||
mat_t qmat;
|
||||
QImage *img;
|
||||
int drawFb;
|
||||
};
|
||||
|
||||
struct qt_tk_bind {
|
||||
|
||||
+111
-119
@@ -28,10 +28,17 @@
|
||||
#ifndef FB_H
|
||||
#define FB_H
|
||||
|
||||
#include "common.h"
|
||||
|
||||
#include <limits.h> /* For INT_MAX */
|
||||
#include <stdlib.h>
|
||||
#ifndef FB_EXPORT
|
||||
# if defined(FB_DLL_EXPORTS) && defined(FB_DLL_IMPORTS)
|
||||
# error "Only FB_DLL_EXPORTS or FB_DLL_IMPORTS can be defined, not both."
|
||||
# elif defined(FB_DLL_EXPORTS)
|
||||
# define FB_EXPORT __declspec(dllexport)
|
||||
# elif defined(FB_DLL_IMPORTS)
|
||||
# define FB_EXPORT __declspec(dllimport)
|
||||
# else
|
||||
# define FB_EXPORT
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Needed for fd_set, avoid including sys/select.h outright since it
|
||||
@@ -47,141 +54,127 @@
|
||||
# include <sys/time.h>
|
||||
#endif
|
||||
|
||||
#include "fbio.h"
|
||||
|
||||
#include "bu/bu_tcl.h"
|
||||
#include "bu/magic.h"
|
||||
#include "bu/vls.h"
|
||||
|
||||
/* Library entry points which are macros.
|
||||
*
|
||||
* FIXME: turn these into proper functions so we can appropriately
|
||||
* avoid dereferencing a NULL _ifp or calling an invalid callback.
|
||||
/**
|
||||
* Format of disk pixels is .pix raw image files. Formerly used as
|
||||
* arguments to many of the library routines, but has fallen into
|
||||
* disuse due to the difficulties with ANSI function prototypes, and
|
||||
* the fact that arrays are not real types in C. The most notable
|
||||
* problem is that of passing a pointer to an array of RGBpixel. It
|
||||
* looks doubly dimensioned, but isn't.
|
||||
*/
|
||||
#define fb_gettype(_ifp) (_ifp->if_type)
|
||||
#define fb_getwidth(_ifp) (_ifp->if_width)
|
||||
#define fb_getheight(_ifp) (_ifp->if_height)
|
||||
#define fb_poll(_ifp) (*_ifp->if_poll)(_ifp)
|
||||
#define fb_help(_ifp) (*_ifp->if_help)(_ifp)
|
||||
#define fb_free(_ifp) (*_ifp->if_free)(_ifp)
|
||||
#define fb_clear(_ifp, _pp) (*_ifp->if_clear)(_ifp, _pp)
|
||||
#define fb_read(_ifp, _x, _y, _pp, _ct) (*_ifp->if_read)(_ifp, _x, _y, _pp, _ct)
|
||||
#define fb_write(_ifp, _x, _y, _pp, _ct) (*_ifp->if_write)(_ifp, _x, _y, _pp, _ct)
|
||||
#define fb_rmap(_ifp, _cmap) (*_ifp->if_rmap)(_ifp, _cmap)
|
||||
#define fb_wmap(_ifp, _cmap) (*_ifp->if_wmap)(_ifp, _cmap)
|
||||
#define fb_view(_ifp, _xc, _yc, _xz, _yz) (*_ifp->if_view)(_ifp, _xc, _yc, _xz, _yz)
|
||||
#define fb_getview(_ifp, _xcp, _ycp, _xzp, _yzp) (*_ifp->if_getview)(_ifp, _xcp, _ycp, _xzp, _yzp)
|
||||
#define fb_setcursor(_ifp, _bits, _xb, _yb, _xo, _yo) (*_ifp->if_setcursor)(_ifp, _bits, _xb, _yb, _xo, _yo)
|
||||
#define fb_cursor(_ifp, _mode, _x, _y) (*_ifp->if_cursor)(_ifp, _mode, _x, _y)
|
||||
#define fb_getcursor(_ifp, _modep, _xp, _yp) (*_ifp->if_getcursor)(_ifp, _modep, _xp, _yp)
|
||||
#define fb_readrect(_ifp, _xmin, _ymin, _width, _height, _pp) (*_ifp->if_readrect)(_ifp, _xmin, _ymin, _width, _height, _pp)
|
||||
#define fb_writerect(_ifp, _xmin, _ymin, _width, _height, _pp) (*_ifp->if_writerect)(_ifp, _xmin, _ymin, _width, _height, _pp)
|
||||
#define fb_bwreadrect(_ifp, _xmin, _ymin, _width, _height, _pp) (*_ifp->if_bwreadrect)(_ifp, _xmin, _ymin, _width, _height, _pp)
|
||||
#define fb_bwwriterect(_ifp, _xmin, _ymin, _width, _height, _pp) (*_ifp->if_bwwriterect)(_ifp, _xmin, _ymin, _width, _height, _pp)
|
||||
typedef unsigned char RGBpixel[3];
|
||||
|
||||
|
||||
/**
|
||||
* These generic color maps have up to 16 bits of significance,
|
||||
* left-justified in a short. Think of this as fixed-point values
|
||||
* from 0 to 1.
|
||||
*/
|
||||
/* FIXME: ColorMap is same as RLEColorMap defined in 'orle.h' */
|
||||
typedef struct {
|
||||
unsigned short cm_red[256];
|
||||
unsigned short cm_green[256];
|
||||
unsigned short cm_blue[256];
|
||||
} ColorMap;
|
||||
|
||||
|
||||
#define PIXEL_NULL (unsigned char *) 0
|
||||
#define RGBPIXEL_NULL (unsigned char *) 0
|
||||
#define COLORMAP_NULL (ColorMap *) 0
|
||||
|
||||
/* Use a typedef to hide the details of the framebuffer structure */
|
||||
typedef struct fb_internal fb;
|
||||
#define FB_NULL (fb *) 0
|
||||
|
||||
/**
|
||||
* assert the integrity of a framebuffer struct.
|
||||
*/
|
||||
#define FB_CK_FB(_p) BU_CKMAG(_p, FB_MAGIC, "FB")
|
||||
|
||||
__BEGIN_DECLS
|
||||
|
||||
/* Library entry points which are true functions. */
|
||||
FB_EXPORT extern void fb_configureWindow(FBIO *, int, int);
|
||||
FB_EXPORT extern FBIO *fb_open(const char *file, int _width, int _height);
|
||||
FB_EXPORT extern int fb_close(FBIO *ifp);
|
||||
FB_EXPORT extern int fb_close_existing(FBIO *ifp);
|
||||
/* Library entry points */
|
||||
|
||||
FB_EXPORT fb *fb_get();
|
||||
FB_EXPORT void fb_put(fb *ifp);
|
||||
FB_EXPORT extern char *fb_gettype(fb *ifp);
|
||||
FB_EXPORT extern int fb_get_max_width(fb *ifp);
|
||||
FB_EXPORT extern int fb_get_max_height(fb *ifp);
|
||||
FB_EXPORT extern int fb_getwidth(fb *ifp);
|
||||
FB_EXPORT extern int fb_getheight(fb *ifp);
|
||||
FB_EXPORT extern int fb_poll(fb *ifp);
|
||||
FB_EXPORT extern int fb_help(fb *ifp);
|
||||
FB_EXPORT extern int fb_free(fb *ifp);
|
||||
FB_EXPORT extern int fb_clear(fb *ifp, unsigned char *pp);
|
||||
FB_EXPORT extern ssize_t fb_read(fb *ifp, int x, int y, unsigned char *pp, size_t count);
|
||||
FB_EXPORT extern ssize_t fb_write(fb *ifp, int x, int y, const unsigned char *pp, size_t count);
|
||||
FB_EXPORT extern int fb_rmap(fb *ifp, ColorMap *cmap);
|
||||
FB_EXPORT extern int fb_wmap(fb *ifp, const ColorMap *cmap);
|
||||
FB_EXPORT extern int fb_view(fb *ifp, int xcenter, int ycenter, int xzoom, int yzoom);
|
||||
FB_EXPORT extern int fb_getview(fb *ifp, int *xcenter, int *ycenter, int *xzoom, int *yzoom);
|
||||
FB_EXPORT extern int fb_setcursor(fb *ifp, const unsigned char *bits, int xb, int yb, int xo, int yo);
|
||||
FB_EXPORT extern int fb_cursor(fb *ifp, int mode, int x, int y);
|
||||
FB_EXPORT extern int fb_getcursor(fb *ifp, int *mode, int *x, int *y);
|
||||
FB_EXPORT extern int fb_readrect(fb *ifp, int xmin, int ymin, int width, int height, unsigned char *pp);
|
||||
FB_EXPORT extern int fb_writerect(fb *ifp, int xmin, int ymin, int width, int height, const unsigned char *pp);
|
||||
FB_EXPORT extern int fb_bwreadrect(fb *ifp, int xmin, int ymin, int width, int height, unsigned char *pp);
|
||||
FB_EXPORT extern int fb_bwwriterect(fb *ifp, int xmin, int ymin, int width, int height, const unsigned char *pp);
|
||||
|
||||
FB_EXPORT extern fb *fb_open(const char *file, int _width, int _height);
|
||||
FB_EXPORT extern int fb_close(fb *ifp);
|
||||
FB_EXPORT extern int fb_close_existing(fb *ifp);
|
||||
FB_EXPORT extern int fb_genhelp(void);
|
||||
FB_EXPORT extern int fb_ioinit(FBIO *ifp);
|
||||
FB_EXPORT extern int fb_seek(FBIO *ifp, int x, int y);
|
||||
FB_EXPORT extern int fb_tell(FBIO *ifp, int *xp, int *yp);
|
||||
FB_EXPORT extern int fb_rpixel(FBIO *ifp, unsigned char *pp);
|
||||
FB_EXPORT extern int fb_wpixel(FBIO *ifp, unsigned char *pp);
|
||||
FB_EXPORT extern int fb_flush(FBIO *ifp);
|
||||
FB_EXPORT extern int fb_ioinit(fb *ifp);
|
||||
FB_EXPORT extern int fb_seek(fb *ifp, int x, int y);
|
||||
FB_EXPORT extern int fb_tell(fb *ifp, int *xp, int *yp);
|
||||
FB_EXPORT extern int fb_rpixel(fb *ifp, unsigned char *pp);
|
||||
FB_EXPORT extern int fb_wpixel(fb *ifp, unsigned char *pp);
|
||||
FB_EXPORT extern int fb_flush(fb *ifp);
|
||||
FB_EXPORT extern int fb_configure_window(fb *, int, int);
|
||||
FB_EXPORT extern int fb_refresh(fb *ifp, int x, int y, int w, int h);
|
||||
#if !defined(_WIN32) || defined(__CYGWIN__)
|
||||
FB_EXPORT extern void fb_log(const char *fmt, ...) _BU_ATTR_PRINTF12;
|
||||
#endif
|
||||
FB_EXPORT extern int fb_null(FBIO *ifp);
|
||||
FB_EXPORT extern int fb_null_setcursor(FBIO *ifp, const unsigned char *bits, int xbits, int ybits, int xorig, int yorig);
|
||||
FB_EXPORT extern int fb_null(fb *ifp);
|
||||
FB_EXPORT extern int fb_null_setcursor(fb *ifp, const unsigned char *bits, int xbits, int ybits, int xorig, int yorig);
|
||||
|
||||
/* utility functions */
|
||||
FB_EXPORT extern int fb_common_file_size(size_t *widthp, size_t *heightp, const char *filename, int pixel_size);
|
||||
FB_EXPORT extern int fb_common_image_size(size_t *widthp, size_t *heightp, size_t npixels);
|
||||
FB_EXPORT extern int fb_common_name_size(size_t *widthp, size_t *heightp, const char *name);
|
||||
FB_EXPORT extern int fb_write_fp(FBIO *ifp, FILE *fp, int req_width, int req_height, int crunch, int inverse, struct bu_vls *result);
|
||||
FB_EXPORT extern int fb_read_fd(FBIO *ifp, int fd, int file_width, int file_height, int file_xoff, int file_yoff, int scr_width, int scr_height, int scr_xoff, int scr_yoff, int fileinput, char *file_name, int one_line_only, int multiple_lines, int autosize, int inverse, int clear, int zoom, struct bu_vls *result);
|
||||
FB_EXPORT extern int fb_write_fp(fb *ifp, FILE *fp, int req_width, int req_height, int crunch, int inverse, struct bu_vls *result);
|
||||
FB_EXPORT extern int fb_read_fd(fb *ifp, int fd, int file_width, int file_height, int file_xoff, int file_yoff, int scr_width, int scr_height, int scr_xoff, int scr_yoff, int fileinput, char *file_name, int one_line_only, int multiple_lines, int autosize, int inverse, int clear, int zoom, struct bu_vls *result);
|
||||
|
||||
FB_EXPORT extern void fb_set_interface(fb *ifp, const char *interface_type);
|
||||
FB_EXPORT extern void fb_set_name(fb *ifp, const char *name);
|
||||
FB_EXPORT extern char *fb_get_name(fb *ifp);
|
||||
FB_EXPORT extern void fb_set_magic(fb *ifp, uint32_t magic);
|
||||
FB_EXPORT extern long fb_get_pagebuffer_pixel_size(fb *ifp);
|
||||
|
||||
FB_EXPORT extern int fb_is_set_fd(fb *ifp, fd_set *infds);
|
||||
FB_EXPORT extern int fb_set_fd(fb *ifp, fd_set *select_list);
|
||||
FB_EXPORT extern int fb_clear_fd(fb *ifp, fd_set *select_list);
|
||||
|
||||
/* color mapping */
|
||||
FB_EXPORT extern int fb_is_linear_cmap(const ColorMap *cmap);
|
||||
FB_EXPORT extern void fb_make_linear_cmap(ColorMap *cmap);
|
||||
|
||||
/* open_existing functionality. */
|
||||
struct fb_platform_specific {uint32_t magic; void *data;};
|
||||
FB_EXPORT extern struct fb_platform_specific *fb_get_platform_specific(uint32_t magic);
|
||||
FB_EXPORT extern void fb_put_platform_specific(struct fb_platform_specific *fb_p);
|
||||
FB_EXPORT extern fb *fb_open_existing(const char *file, int _width, int _height, struct fb_platform_specific *fb_p);
|
||||
|
||||
/* backward compatibility hacks */
|
||||
FB_EXPORT extern int fb_reset(FBIO *ifp);
|
||||
FB_EXPORT extern int fb_viewport(FBIO *ifp, int left, int top, int right, int bottom);
|
||||
FB_EXPORT extern int fb_window(FBIO *ifp, int xcenter, int ycenter);
|
||||
FB_EXPORT extern int fb_zoom(FBIO *ifp, int xzoom, int yzoom);
|
||||
FB_EXPORT extern int fb_scursor(FBIO *ifp, int mode, int x, int y);
|
||||
|
||||
/*
|
||||
* Some functions and variables we couldn't hide.
|
||||
* Not for general consumption.
|
||||
*/
|
||||
FB_EXPORT extern int _fb_disk_enable;
|
||||
FB_EXPORT extern int fb_sim_readrect(FBIO *ifp, int xmin, int ymin, int _width, int _height, unsigned char *pp);
|
||||
FB_EXPORT extern int fb_sim_writerect(FBIO *ifp, int xmin, int ymin, int _width, int _height, const unsigned char *pp);
|
||||
FB_EXPORT extern int fb_sim_bwreadrect(FBIO *ifp, int xmin, int ymin, int _width, int _height, unsigned char *pp);
|
||||
FB_EXPORT extern int fb_sim_bwwriterect(FBIO *ifp, int xmin, int ymin, int _width, int _height, const unsigned char *pp);
|
||||
FB_EXPORT extern int fb_sim_view(FBIO *ifp, int xcenter, int ycenter, int xzoom, int yzoom);
|
||||
FB_EXPORT extern int fb_sim_getview(FBIO *ifp, int *xcenter, int *ycenter, int *xzoom, int *yzoom);
|
||||
FB_EXPORT extern int fb_sim_cursor(FBIO *ifp, int mode, int x, int y);
|
||||
FB_EXPORT extern int fb_sim_getcursor(FBIO *ifp, int *mode, int *x, int *y);
|
||||
|
||||
/* FIXME: these IF_* sections need to die. they don't belong in a public header. */
|
||||
|
||||
#ifdef IF_X
|
||||
# ifdef HAVE_X11_XLIB_H
|
||||
# include <X11/Xlib.h>
|
||||
# include <X11/Xutil.h>
|
||||
# endif
|
||||
FB_EXPORT extern int _X24_open_existing(FBIO *ifp, Display *dpy, Window win, Window cwinp, Colormap cmap, XVisualInfo *vip, int width, int height, GC gc);
|
||||
#endif
|
||||
|
||||
#ifdef IF_OGL
|
||||
# ifdef HAVE_X11_XLIB_H
|
||||
# include <X11/Xlib.h>
|
||||
# include <X11/Xutil.h>
|
||||
# endif
|
||||
/* glx.h on Mac OS X (and perhaps elsewhere) defines a slew of
|
||||
* parameter names that shadow system symbols. protect the system
|
||||
* symbols by redefining the parameters prior to header inclusion.
|
||||
*/
|
||||
# define j1 J1
|
||||
# define y1 Y1
|
||||
# define read rd
|
||||
# define index idx
|
||||
# define access acs
|
||||
# define remainder rem
|
||||
# ifdef HAVE_GL_GLX_H
|
||||
# include <GL/glx.h>
|
||||
# endif
|
||||
# undef remainder
|
||||
# undef access
|
||||
# undef index
|
||||
# undef read
|
||||
# undef y1
|
||||
# undef j1
|
||||
# ifdef HAVE_GL_GL_H
|
||||
# include <GL/gl.h>
|
||||
# endif
|
||||
FB_EXPORT extern int _ogl_open_existing(FBIO *ifp, Display *dpy, Window win, Colormap cmap, XVisualInfo *vip, int width, int height, GLXContext glxc, int double_buffer, int soft_cmap);
|
||||
#endif
|
||||
|
||||
#ifdef IF_WGL
|
||||
# include <windows.h>
|
||||
# include <tk.h>
|
||||
# ifdef HAVE_GL_GL_H
|
||||
# include <GL/gl.h>
|
||||
# endif
|
||||
FB_EXPORT extern int _wgl_open_existing(FBIO *ifp, Display *dpy, Window win, Colormap cmap, PIXELFORMATDESCRIPTOR *vip, HDC hdc, int width, int height, HGLRC glxc, int double_buffer, int soft_cmap);
|
||||
#endif
|
||||
|
||||
#ifdef IF_QT
|
||||
FB_EXPORT extern int _qt_open_existing(FBIO *ifp);
|
||||
#endif
|
||||
FB_EXPORT extern int fb_reset(fb *ifp);
|
||||
FB_EXPORT extern int fb_viewport(fb *ifp, int left, int top, int right, int bottom);
|
||||
FB_EXPORT extern int fb_window(fb *ifp, int xcenter, int ycenter);
|
||||
FB_EXPORT extern int fb_zoom(fb *ifp, int xzoom, int yzoom);
|
||||
FB_EXPORT extern int fb_scursor(fb *ifp, int mode, int x, int y);
|
||||
|
||||
/*
|
||||
* Copy one RGB pixel to another.
|
||||
@@ -200,14 +193,13 @@ FB_EXPORT extern int _qt_open_existing(FBIO *ifp);
|
||||
/* The presence of Tcl_Interp as an arg prevents giving arg list */
|
||||
FB_EXPORT extern void fb_tcl_setup(void);
|
||||
FB_EXPORT extern int Fb_Init(Tcl_Interp *interp);
|
||||
FB_EXPORT extern int fb_refresh(FBIO *ifp, int x, int y, int w, int h);
|
||||
|
||||
|
||||
/**
|
||||
* report version information about LIBFB
|
||||
*/
|
||||
FB_EXPORT extern const char *fb_version(void);
|
||||
|
||||
|
||||
__END_DECLS
|
||||
|
||||
#endif /* FB_H */
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
set(fb_noinstall_headers
|
||||
fb_platform_specific.h
|
||||
)
|
||||
|
||||
CMAKEFILES(${fb_noinstall_headers})
|
||||
|
||||
# Local Variables:
|
||||
# tab-width: 8
|
||||
# mode: cmake
|
||||
# indent-tabs-mode: t
|
||||
# End:
|
||||
# ex: shiftwidth=2 tabstop=8
|
||||
@@ -0,0 +1,130 @@
|
||||
/* F B _ P L A T F O R M _ S P E C I F I C . H
|
||||
* BRL-CAD
|
||||
*
|
||||
* Copyright (c) 2014 United States Government as represented by
|
||||
* the U.S. Army Research Laboratory.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* version 2.1 as published by the Free Software Foundation.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this file; see the file named COPYING for more
|
||||
* information.
|
||||
*/
|
||||
/** @addtogroup if */
|
||||
/** @{*/
|
||||
/** @file fb_platform_specific.h
|
||||
*
|
||||
* Structure holding information necessary for embedding a
|
||||
* framebuffer in an X11 parent window. This is NOT public API
|
||||
* for libfb, and is not guaranteed to be stable from one
|
||||
* release to the next.
|
||||
*
|
||||
*/
|
||||
/** @} */
|
||||
|
||||
#ifdef FB_USE_INTERNAL_API
|
||||
#ifdef IF_X
|
||||
|
||||
#include "common.h"
|
||||
#include <X11/X.h>
|
||||
|
||||
struct X24_fb_info {
|
||||
Display *dpy;
|
||||
Window win;
|
||||
Window cwinp;
|
||||
Colormap cmap;
|
||||
XVisualInfo *vip;
|
||||
GC gc;
|
||||
};
|
||||
|
||||
#endif /* IF_X */
|
||||
|
||||
#ifdef IF_OGL
|
||||
# ifdef HAVE_X11_XLIB_H
|
||||
# include <X11/Xlib.h>
|
||||
# include <X11/Xutil.h>
|
||||
# endif
|
||||
/* glx.h on Mac OS X (and perhaps elsewhere) defines a slew of
|
||||
* * * parameter names that shadow system symbols. protect the system
|
||||
* * * symbols by redefining the parameters prior to header inclusion.
|
||||
* * */
|
||||
# define j1 J1
|
||||
# define y1 Y1
|
||||
# define read rd
|
||||
# define index idx
|
||||
# define access acs
|
||||
# define remainder rem
|
||||
# ifdef HAVE_GL_GLX_H
|
||||
# include <GL/glx.h>
|
||||
# endif
|
||||
# undef remainder
|
||||
# undef access
|
||||
# undef index
|
||||
# undef read
|
||||
# undef y1
|
||||
# undef j1
|
||||
# ifdef HAVE_GL_GL_H
|
||||
# include <GL/gl.h>
|
||||
# endif
|
||||
|
||||
struct ogl_fb_info {
|
||||
Display *dpy;
|
||||
Window win;
|
||||
Colormap cmap;
|
||||
XVisualInfo *vip;
|
||||
GLXContext glxc;
|
||||
int double_buffer;
|
||||
int soft_cmap;
|
||||
};
|
||||
#endif /* IF_OGL */
|
||||
|
||||
|
||||
#ifdef IF_WGL
|
||||
# include <windows.h>
|
||||
/* The wgl interface as currently implemented uses some
|
||||
* X11 types, supplied by Tk. */
|
||||
# include <tk.h>
|
||||
# ifdef HAVE_GL_GL_H
|
||||
# include <GL/gl.h>
|
||||
# endif
|
||||
|
||||
struct wgl_fb_info {
|
||||
Display *dpy;
|
||||
Window win;
|
||||
Colormap cmap;
|
||||
PIXELFORMATDESCRIPTOR *vip;
|
||||
HDC hdc;
|
||||
HGLRC glxc;
|
||||
int double_buffer;
|
||||
int soft_cmap;
|
||||
};
|
||||
#endif /* IF_WGL */
|
||||
|
||||
#ifdef IF_QT
|
||||
struct qt_fb_info {
|
||||
void *qapp;
|
||||
void *qwin;
|
||||
void *qpainter;
|
||||
void *draw;
|
||||
void *qimg;
|
||||
}
|
||||
#endif /* IF_QT */
|
||||
|
||||
#endif /* FB_USE_INTERNAL_API */
|
||||
|
||||
/*
|
||||
* Local Variables:
|
||||
* mode: C
|
||||
* tab-width: 8
|
||||
* indent-tabs-mode: t
|
||||
* c-file-style: "stroustrup"
|
||||
* End:
|
||||
* ex: shiftwidth=4 tabstop=8
|
||||
*/
|
||||
-185
@@ -1,185 +0,0 @@
|
||||
/* F B I O . H
|
||||
* BRL-CAD
|
||||
*
|
||||
* Copyright (c) 2005-2014 United States Government as represented by
|
||||
* the U.S. Army Research Laboratory.
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public License
|
||||
* version 2.1 as published by the Free Software Foundation.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful, but
|
||||
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this file; see the file named COPYING for more
|
||||
* information.
|
||||
*/
|
||||
/** @addtogroup libfb */
|
||||
/** @{ */
|
||||
/** @file fbio.h
|
||||
*
|
||||
* BRL-CAD Framebuffer Library I/O Interfaces
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef FBIO_H
|
||||
#define FBIO_H
|
||||
|
||||
#include "common.h"
|
||||
|
||||
#include "bu/magic.h"
|
||||
|
||||
#ifndef FB_EXPORT
|
||||
# if defined(FB_DLL_EXPORTS) && defined(FB_DLL_IMPORTS)
|
||||
# error "Only FB_DLL_EXPORTS or FB_DLL_IMPORTS can be defined, not both."
|
||||
# elif defined(FB_DLL_EXPORTS)
|
||||
# define FB_EXPORT __declspec(dllexport)
|
||||
# elif defined(FB_DLL_IMPORTS)
|
||||
# define FB_EXPORT __declspec(dllimport)
|
||||
# else
|
||||
# define FB_EXPORT
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Format of disk pixels is .pix raw image files. Formerly used as
|
||||
* arguments to many of the library routines, but has fallen into
|
||||
* disuse due to the difficulties with ANSI function prototypes, and
|
||||
* the fact that arrays are not real types in C. The most notable
|
||||
* problem is that of passing a pointer to an array of RGBpixel. It
|
||||
* looks doubly dimensioned, but isn't.
|
||||
*/
|
||||
typedef unsigned char RGBpixel[3];
|
||||
|
||||
|
||||
/**
|
||||
* These generic color maps have up to 16 bits of significance,
|
||||
* left-justified in a short. Think of this as fixed-point values
|
||||
* from 0 to 1.
|
||||
*/
|
||||
/* FIXME: ColorMap is same as RLEColorMap defined in 'orle.h' */
|
||||
typedef struct {
|
||||
unsigned short cm_red[256];
|
||||
unsigned short cm_green[256];
|
||||
unsigned short cm_blue[256];
|
||||
} ColorMap;
|
||||
|
||||
|
||||
#define PIXEL_NULL (unsigned char *) 0
|
||||
#define RGBPIXEL_NULL (unsigned char *) 0
|
||||
#define COLORMAP_NULL (ColorMap *) 0
|
||||
#define FBIO_NULL (FBIO *) 0
|
||||
|
||||
|
||||
/**
|
||||
*@brief
|
||||
* A frame-buffer IO structure.
|
||||
*
|
||||
* One of these is allocated for each active framebuffer. A pointer
|
||||
* to this structure is the first argument to all the library
|
||||
* routines.
|
||||
*/
|
||||
typedef struct FBIO_ {
|
||||
uint32_t if_magic;
|
||||
/* Static information: per device TYPE. */
|
||||
int (*if_open)(struct FBIO_ *ifp, const char *file, int _width, int _height); /**< @brief open device */
|
||||
int (*if_close)(struct FBIO_ *ifp); /**< @brief close device */
|
||||
int (*if_clear)(struct FBIO_ *ifp, unsigned char *pp); /**< @brief clear device */
|
||||
ssize_t (*if_read)(struct FBIO_ *ifp, int x, int y, unsigned char *pp, size_t count); /**< @brief read pixels */
|
||||
ssize_t (*if_write)(struct FBIO_ *ifp, int x, int y, const unsigned char *pp, size_t count); /**< @brief write pixels */
|
||||
int (*if_rmap)(struct FBIO_ *ifp, ColorMap *cmap); /**< @brief read colormap */
|
||||
int (*if_wmap)(struct FBIO_ *ifp, const ColorMap *cmap); /**< @brief write colormap */
|
||||
int (*if_view)(struct FBIO_ *ifp, int xcent, int ycent, int xzoom, int yzoom); /**< @brief set view */
|
||||
int (*if_getview)(struct FBIO_ *ifp, int *xcent, int *ycent, int *xzoom, int *yzoom); /**< @brief get view */
|
||||
int (*if_setcursor)(struct FBIO_ *ifp, const unsigned char *bits, int xb, int yb, int xo, int yo); /**< @brief define cursor */
|
||||
int (*if_cursor)(struct FBIO_ *ifp, int mode, int x, int y); /**< @brief set cursor */
|
||||
int (*if_getcursor)(struct FBIO_ *ifp, int *mode, int *x, int *y); /**< @brief get cursor */
|
||||
int (*if_readrect)(struct FBIO_ *ifp, int xmin, int ymin, int _width, int _height, unsigned char *pp); /**< @brief read rectangle */
|
||||
int (*if_writerect)(struct FBIO_ *ifp, int xmin, int ymin, int _width, int _height, const unsigned char *pp); /**< @brief write rectangle */
|
||||
int (*if_bwreadrect)(struct FBIO_ *ifp, int xmin, int ymin, int _width, int _height, unsigned char *pp); /**< @brief read monochrome rectangle */
|
||||
int (*if_bwwriterect)(struct FBIO_ *ifp, int xmin, int ymin, int _width, int _height, const unsigned char *pp); /**< @brief write rectangle */
|
||||
int (*if_poll)(struct FBIO_ *ifp); /**< @brief handle events */
|
||||
int (*if_flush)(struct FBIO_ *ifp); /**< @brief flush output */
|
||||
int (*if_free)(struct FBIO_ *ifp); /**< @brief free resources */
|
||||
int (*if_help)(struct FBIO_ *ifp); /**< @brief print useful info */
|
||||
char *if_type; /**< @brief what "open" calls it */
|
||||
int if_max_width; /**< @brief max device width */
|
||||
int if_max_height; /**< @brief max device height */
|
||||
/* Dynamic information: per device INSTANCE. */
|
||||
char *if_name; /**< @brief what the user called it */
|
||||
int if_width; /**< @brief current values */
|
||||
int if_height;
|
||||
int if_selfd; /**< @brief select(fd) for input events if >= 0 */
|
||||
/* Internal information: needed by the library. */
|
||||
int if_fd; /**< @brief internal file descriptor */
|
||||
int if_xzoom; /**< @brief zoom factors */
|
||||
int if_yzoom;
|
||||
int if_xcenter; /**< @brief pan position */
|
||||
int if_ycenter;
|
||||
int if_cursmode; /**< @brief cursor on/off */
|
||||
int if_xcurs; /**< @brief cursor position */
|
||||
int if_ycurs;
|
||||
unsigned char *if_pbase;/**< @brief Address of malloc()ed page buffer. */
|
||||
unsigned char *if_pcurp;/**< @brief Current pointer into page buffer. */
|
||||
unsigned char *if_pendp;/**< @brief End of page buffer. */
|
||||
int if_pno; /**< @brief Current "page" in memory. */
|
||||
int if_pdirty; /**< @brief Page modified flag. */
|
||||
long if_pixcur; /**< @brief Current pixel number in framebuffer. */
|
||||
long if_ppixels; /**< @brief Sizeof page buffer (pixels). */
|
||||
int if_debug; /**< @brief Buffered IO debug flag. */
|
||||
/* State variables for individual interface modules */
|
||||
union {
|
||||
char *p;
|
||||
size_t l;
|
||||
} u1, u2, u3, u4, u5, u6;
|
||||
} FBIO;
|
||||
|
||||
/**
|
||||
* assert the integrity of an FBIO struct.
|
||||
*/
|
||||
#define FB_CK_FBIO(_p) BU_CKMAG(_p, FB_MAGIC, "FBIO")
|
||||
|
||||
/* declare all the possible interfaces */
|
||||
#ifdef IF_REMOTE
|
||||
FB_EXPORT extern FBIO remote_interface; /* not in list[] */
|
||||
#endif
|
||||
|
||||
#ifdef IF_OGL
|
||||
FB_EXPORT extern FBIO ogl_interface;
|
||||
#endif
|
||||
|
||||
#ifdef IF_WGL
|
||||
FB_EXPORT extern FBIO wgl_interface;
|
||||
#endif
|
||||
|
||||
#ifdef IF_X
|
||||
FB_EXPORT extern FBIO X24_interface;
|
||||
FB_EXPORT extern FBIO X_interface;
|
||||
#endif
|
||||
|
||||
#ifdef IF_TK
|
||||
FB_EXPORT extern FBIO tk_interface;
|
||||
#endif
|
||||
|
||||
#ifdef IF_QT
|
||||
FB_EXPORT extern FBIO qt_interface;
|
||||
#endif
|
||||
|
||||
/* Always included */
|
||||
FB_EXPORT extern FBIO debug_interface, disk_interface, stk_interface;
|
||||
FB_EXPORT extern FBIO memory_interface, null_interface;
|
||||
|
||||
#endif /* FBIO_H */
|
||||
/** @} */
|
||||
/*
|
||||
* Local Variables:
|
||||
* mode: C
|
||||
* tab-width: 8
|
||||
* indent-tabs-mode: t
|
||||
* c-file-style: "stroustrup"
|
||||
* End:
|
||||
* ex: shiftwidth=4 tabstop=8
|
||||
*/
|
||||
@@ -59,7 +59,7 @@ struct fbserv_client {
|
||||
|
||||
|
||||
struct fbserv_obj {
|
||||
FBIO *fbs_fbp; /**< @brief framebuffer pointer */
|
||||
fb *fbs_fbp; /**< @brief framebuffer pointer */
|
||||
Tcl_Interp *fbs_interp; /**< @brief tcl interpreter */
|
||||
struct fbserv_listener fbs_listener; /**< @brief data for listening */
|
||||
struct fbserv_client fbs_clients[MAX_CLIENTS]; /**< @brief connected clients */
|
||||
|
||||
+1
-1
@@ -161,7 +161,7 @@ __BEGIN_DECLS
|
||||
}
|
||||
|
||||
#define GED_CHECK_FBSERV_FBP(_gedp, _flags) \
|
||||
if (_gedp->ged_fbsp->fbs_fbp == FBIO_NULL) { \
|
||||
if (_gedp->ged_fbsp->fbs_fbp == FB_NULL) { \
|
||||
int ged_check_view_quiet = (_flags) & GED_QUIET; \
|
||||
if (!ged_check_view_quiet) { \
|
||||
bu_vls_trunc((_gedp)->ged_result_str, 0); \
|
||||
|
||||
@@ -25,6 +25,11 @@
|
||||
#ifndef RT_DB_FULLPATH_H
|
||||
#define RT_DB_FULLPATH_H
|
||||
|
||||
/* struct resource requires db_fullpath as part of its definition -
|
||||
* so long as that is true, typedef to avoid circular definition
|
||||
* problem */
|
||||
typedef struct resource struct_resource;
|
||||
|
||||
/**
|
||||
* For collecting paths through the database tree.
|
||||
* The fp_bool array can optionally hold a boolean flag
|
||||
@@ -193,13 +198,16 @@ RT_EXPORT extern int db_full_path_search(const struct db_full_path *a,
|
||||
* to the specified depth.
|
||||
*
|
||||
* Returns -
|
||||
* -1 Failure
|
||||
* 0 OK
|
||||
* 1 OK, path matrix written into 'mat'.
|
||||
* 0 FAIL
|
||||
*
|
||||
* Called in librt/db_tree.c, mged/dodraw.c, and mged/animedit.c
|
||||
*/
|
||||
RT_EXPORT extern int db_full_path_transformation_matrix(matp_t matp,
|
||||
struct db_i *dbip,
|
||||
const struct db_full_path *path,
|
||||
const int depth);
|
||||
RT_EXPORT extern int db_path_to_mat(struct db_i *dbip,
|
||||
struct db_full_path *pathp,
|
||||
mat_t mat, /* result */
|
||||
const int depth, /* number of arcs */
|
||||
struct_resource *resp);
|
||||
|
||||
|
||||
#endif /*RT_DB_FULLPATH_H*/
|
||||
|
||||
@@ -203,7 +203,7 @@ foreach(CFG_TYPE ${CMAKE_CONFIGURATION_TYPES})
|
||||
endforeach(CFG_TYPE ${CMAKE_CONFIGURATION_TYPES})
|
||||
|
||||
# TODO - figure out if this should be integrated above
|
||||
CHECK_COMPILER_FLAG(C "Wunused-const-variable" HAVE_C_WUNUSED_CONST_VARIABLE)
|
||||
CHECK_COMPILER_FLAG(C "-Wunused-const-variable" HAVE_C_WUNUSED_CONST_VARIABLE)
|
||||
|
||||
|
||||
# Local Variables:
|
||||
|
||||
@@ -1,3 +1,8 @@
|
||||
add_definitions(
|
||||
-DHAVE_CONFIG_H
|
||||
-DBRLCADBUILD=1
|
||||
)
|
||||
|
||||
# locally used but not needed by users of the library
|
||||
include_directories(
|
||||
${BRLCAD_SOURCE_DIR}/include
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
\f0\i\b\fs72 \cf0 README
|
||||
\fs36 \
|
||||
|
||||
\f1\i0\b0\fs28 This is BRL-CAD 7.24.0 for Mac OS X. Please send any bugs, comments, questions, or suggestions to the project website.\
|
||||
\f1\i0\b0\fs28 This is BRL-CAD 7.26.0 for Mac OS X. Please send any bugs, comments, questions, or suggestions to the project website.\
|
||||
|
||||
\fs22 \
|
||||
|
||||
|
||||
@@ -4,9 +4,9 @@
|
||||
\margl1440\margr1440\vieww8020\viewh6280\viewkind0
|
||||
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural
|
||||
|
||||
\f0\fs22 \cf0 This installer will guide you through the installation of BRL-CAD 7.24.0 for Mac OS X and Darwin.\
|
||||
\f0\fs22 \cf0 This installer will guide you through the installation of BRL-CAD 7.26.0 for Mac OS X and Darwin.\
|
||||
\
|
||||
This distribution of BRL-CAD requires approximately 250 MB of available disk space and does not include source code.\
|
||||
This distribution of BRL-CAD requires approximately 500 MB of available disk space and does not include source code.\
|
||||
\
|
||||
If you have an existing BRL-CAD installation, you are advised to backup any files you have in /usr/brlcad. Any existing BRL-CAD installation will be overwritten.\
|
||||
|
||||
|
||||
+1
-9
@@ -41,14 +41,6 @@ set(level_1_dirs
|
||||
# the BRLCAD_ENABLE_TARGETS level to 2 will enable all libraries but no
|
||||
# programs.
|
||||
|
||||
# The interaction of MSVC and Boost looks problematic -
|
||||
# since we're not using libpc at the moment, conditionalize
|
||||
if(NOT MSVC)
|
||||
set(LIBPC_DIR libpc)
|
||||
else(NOT MSVC)
|
||||
CMAKEFILES(libpc)
|
||||
endif(NOT MSVC)
|
||||
|
||||
# Only add librtserver if it's enabled
|
||||
if(BRLCAD_ENABLE_RTSERVER)
|
||||
set(LIBRTSERVER_DIR librtserver)
|
||||
@@ -68,7 +60,7 @@ set(level_2_dirs
|
||||
libfft
|
||||
libicv
|
||||
libmultispectral
|
||||
${LIBPC_DIR}
|
||||
libpc
|
||||
${LIBRTSERVER_DIR}
|
||||
libtclcad
|
||||
libtermio
|
||||
|
||||
+42
-42
@@ -1,19 +1,19 @@
|
||||
if(WIN32)
|
||||
BRLCAD_MANAGE_FILES("archer.bat" ${BIN_DIR} EXEC)
|
||||
endif(WIN32)
|
||||
BRLCAD_MANAGE_FILES("archer" ${BIN_DIR} EXEC)
|
||||
|
||||
# archer depends on the creation/installation of all the
|
||||
# tclscripts.
|
||||
add_custom_target(archer ALL DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/archer)
|
||||
set_target_properties(archer PROPERTIES FOLDER "BRL-CAD Executables")
|
||||
add_dependencies(archer bwish rtwizard)
|
||||
foreach(item ${tclindex_target_list})
|
||||
add_dependencies(archer ${item})
|
||||
endforeach(item ${tclindex_target_list})
|
||||
|
||||
# other archer dependencies
|
||||
if(BRLCAD_ENABLE_TK)
|
||||
if(WIN32)
|
||||
BRLCAD_MANAGE_FILES("archer.bat" ${BIN_DIR} EXEC)
|
||||
endif(WIN32)
|
||||
BRLCAD_MANAGE_FILES("archer" ${BIN_DIR} EXEC)
|
||||
|
||||
# archer depends on the creation/installation of all the
|
||||
# tclscripts.
|
||||
add_custom_target(archer ALL DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/archer)
|
||||
set_target_properties(archer PROPERTIES FOLDER "BRL-CAD Executables")
|
||||
add_dependencies(archer bwish rtwizard)
|
||||
foreach(item ${tclindex_target_list})
|
||||
add_dependencies(archer ${item})
|
||||
endforeach(item ${tclindex_target_list})
|
||||
|
||||
# other archer dependencies
|
||||
add_dependencies(archer bwish ${ITCL_LIBRARY} ${ITK_LIBRARY})
|
||||
get_directory_property(BRLCAD_BUILD_TKHTML DIRECTORY ${CMAKE_SOURCE_DIR}/src/other DEFINITION BRLCAD_TKHTML_BUILD)
|
||||
if(BRLCAD_BUILD_TKHTML)
|
||||
@@ -27,35 +27,35 @@ if(BRLCAD_ENABLE_TK)
|
||||
if(BRLCAD_BUILD_TKTABLE)
|
||||
add_dependencies(archer Tktable)
|
||||
endif(BRLCAD_BUILD_TKTABLE)
|
||||
|
||||
BRLCAD_ADDDATA(plugins/Core/README plugins/archer/Core)
|
||||
BRLCAD_ADDDATA(plugins/Commands/README plugins/archer/Command)
|
||||
|
||||
set(archer_utility_FILES
|
||||
plugins/Utility/attrGroupsDisplayUtilityP.tcl
|
||||
plugins/Utility/botUtilityP.tcl
|
||||
plugins/Utility/lodUtilityP.tcl
|
||||
plugins/Utility/README
|
||||
)
|
||||
BRLCAD_ADDDATA(archer_utility_FILES plugins/archer/Utility)
|
||||
|
||||
BRLCAD_ADDDATA(plugins/Utility/attrGroupsDisplayUtilityP/AttrGroupsDisplayUtilityP.tcl plugins/archer/Utility/attrGroupsDisplayUtilityP)
|
||||
BRLCAD_ADDDATA(plugins/Utility/botUtilityP/BotUtilityP.tcl plugins/archer/Utility/botUtilityP)
|
||||
BRLCAD_ADDDATA(plugins/Utility/lodUtilityP/LODUtilityP.tcl plugins/archer/Utility/lodUtilityP)
|
||||
|
||||
set(archer_wizard_FILES
|
||||
plugins/Wizards/humanwizard.tcl
|
||||
plugins/Wizards/tankwizard.tcl
|
||||
plugins/Wizards/tirewizard.tcl
|
||||
)
|
||||
BRLCAD_ADDDATA(archer_wizard_FILES plugins/archer/Wizards)
|
||||
|
||||
BRLCAD_ADDDATA(plugins/Wizards/humanwizard/HumanWizard.tcl plugins/archer/Wizards/humanwizard)
|
||||
BRLCAD_ADDDATA(plugins/Wizards/tankwizard/TankWizard.tcl plugins/archer/Wizards/tankwizard)
|
||||
BRLCAD_ADDDATA(plugins/Wizards/tankwizard/images/tank.png plugins/archer/Wizards/tankwizardIA/images)
|
||||
BRLCAD_ADDDATA(plugins/Wizards/tirewizard/TireWizard.tcl plugins/archer/Wizards/tirewizard)
|
||||
endif(BRLCAD_ENABLE_TK)
|
||||
|
||||
BRLCAD_ADDDATA(plugins/Core/README plugins/archer/Core)
|
||||
BRLCAD_ADDDATA(plugins/Commands/README plugins/archer/Command)
|
||||
|
||||
set(archer_utility_FILES
|
||||
plugins/Utility/attrGroupsDisplayUtilityP.tcl
|
||||
plugins/Utility/botUtilityP.tcl
|
||||
plugins/Utility/lodUtilityP.tcl
|
||||
plugins/Utility/README
|
||||
)
|
||||
BRLCAD_ADDDATA(archer_utility_FILES plugins/archer/Utility)
|
||||
|
||||
BRLCAD_ADDDATA(plugins/Utility/attrGroupsDisplayUtilityP/AttrGroupsDisplayUtilityP.tcl plugins/archer/Utility/attrGroupsDisplayUtilityP)
|
||||
BRLCAD_ADDDATA(plugins/Utility/botUtilityP/BotUtilityP.tcl plugins/archer/Utility/botUtilityP)
|
||||
BRLCAD_ADDDATA(plugins/Utility/lodUtilityP/LODUtilityP.tcl plugins/archer/Utility/lodUtilityP)
|
||||
|
||||
set(archer_wizard_FILES
|
||||
plugins/Wizards/humanwizard.tcl
|
||||
plugins/Wizards/tankwizard.tcl
|
||||
plugins/Wizards/tirewizard.tcl
|
||||
)
|
||||
BRLCAD_ADDDATA(archer_wizard_FILES plugins/archer/Wizards)
|
||||
|
||||
BRLCAD_ADDDATA(plugins/Wizards/humanwizard/HumanWizard.tcl plugins/archer/Wizards/humanwizard)
|
||||
BRLCAD_ADDDATA(plugins/Wizards/tankwizard/TankWizard.tcl plugins/archer/Wizards/tankwizard)
|
||||
BRLCAD_ADDDATA(plugins/Wizards/tankwizard/images/tank.png plugins/archer/Wizards/tankwizardIA/images)
|
||||
BRLCAD_ADDDATA(plugins/Wizards/tirewizard/TireWizard.tcl plugins/archer/Wizards/tirewizard)
|
||||
|
||||
set(archer_ignore_files
|
||||
TODO
|
||||
archer
|
||||
|
||||
+1
-1
@@ -116,7 +116,7 @@ extern void brst_log(const char *, ...);
|
||||
extern int roundToInt(fastf_t f);
|
||||
|
||||
extern Colors colorids;
|
||||
extern FBIO *fbiop;
|
||||
extern fb *fbiop;
|
||||
extern FILE *burstfp;
|
||||
extern FILE *gridfp;
|
||||
extern FILE *histfp;
|
||||
|
||||
+4
-4
@@ -58,7 +58,7 @@ imageInit()
|
||||
zoom = 1;
|
||||
|
||||
/* Determine whether it is necessary to open fbfile. */
|
||||
if (fbiop == FBIO_NULL || fb_getwidth(fbiop) != devwid)
|
||||
if (fbiop == FB_NULL || fb_getwidth(fbiop) != devwid)
|
||||
needopen = 1; /* not currently open or size changed */
|
||||
else
|
||||
if (lastfbfile[0] != NUL && !BU_STR_EQUAL(fbfile, lastfbfile))
|
||||
@@ -89,7 +89,7 @@ openFbDevice(char *fbdev)
|
||||
ret = 0;
|
||||
goto safe_exit;
|
||||
}
|
||||
if (((fbiop != FBIO_NULL && fb_getwidth(fbiop) != devwid)
|
||||
if (((fbiop != FB_NULL && fb_getwidth(fbiop) != devwid)
|
||||
|| pixgrid == NULL)
|
||||
&& (pixgrid = (unsigned char *) calloc(devwid*3, sizeof(unsigned char)))
|
||||
== (unsigned char *) NULL) {
|
||||
@@ -99,7 +99,7 @@ openFbDevice(char *fbdev)
|
||||
goto safe_exit;
|
||||
}
|
||||
(void) memset((char *) pixgrid, NUL, sizeof(unsigned char)*devwid*3);
|
||||
if (fbiop != FBIO_NULL) {
|
||||
if (fbiop != FB_NULL) {
|
||||
if (! closFbDevice()) {
|
||||
ret = 0;
|
||||
goto safe_exit;
|
||||
@@ -132,7 +132,7 @@ closFbDevice()
|
||||
ret = 0;
|
||||
else {
|
||||
ret = 1;
|
||||
fbiop = FBIO_NULL;
|
||||
fbiop = FB_NULL;
|
||||
}
|
||||
notify(NULL, NOTIFY_DELETE);
|
||||
return ret;
|
||||
|
||||
+1
-1
@@ -35,7 +35,7 @@
|
||||
|
||||
|
||||
Colors colorids; /* ident range to color mappings for plots */
|
||||
FBIO *fbiop = NULL; /* frame buffer specific access from libfb */
|
||||
fb *fbiop = NULL; /* frame buffer specific access from libfb */
|
||||
FILE *burstfp = NULL; /* input stream for burst point locations */
|
||||
FILE *gridfp = NULL; /* grid file output stream (2-d shots) */
|
||||
FILE *histfp = NULL; /* histogram output stream (statistics) */
|
||||
|
||||
+23
-15
@@ -1,4 +1,4 @@
|
||||
/* 3 D M - G . C P P
|
||||
/* 3 D M - G . C P P
|
||||
* BRL-CAD
|
||||
*
|
||||
* Copyright (c) 2004-2014 United States Government as represented by
|
||||
@@ -28,7 +28,6 @@
|
||||
|
||||
#include "common.h"
|
||||
|
||||
#include <cstdio> /* for sscanf */
|
||||
#include <iostream>
|
||||
|
||||
#include "conv3dm-g.hpp"
|
||||
@@ -38,7 +37,8 @@
|
||||
int
|
||||
main(int argc, char** argv)
|
||||
{
|
||||
static const char * const usage = "Usage: 3dm-g [-v vmode] [-r] [-u] -o output_file.g input_file.3dm\n";
|
||||
static const char * const usage =
|
||||
"Usage: 3dm-g [-v] [-r] [-u] -o output_file.g input_file.3dm\n";
|
||||
|
||||
bool verbose_mode = false;
|
||||
bool random_colors = false;
|
||||
@@ -47,26 +47,34 @@ main(int argc, char** argv)
|
||||
const char* inputFileName;
|
||||
|
||||
int c;
|
||||
|
||||
while ((c = bu_getopt(argc, argv, "o:dvt:s:ruh?")) != -1) {
|
||||
switch (c) {
|
||||
case 's': /* scale factor */
|
||||
break;
|
||||
|
||||
case 'o': /* specify output file name */
|
||||
outputFileName = bu_optarg;
|
||||
break;
|
||||
|
||||
case 'd': /* debug */
|
||||
break;
|
||||
|
||||
case 't': /* tolerance */
|
||||
break;
|
||||
|
||||
case 'v': /* verbose */
|
||||
verbose_mode = true;
|
||||
break;
|
||||
|
||||
case 'r': /* randomize colors */
|
||||
random_colors = true;
|
||||
break;
|
||||
|
||||
case 'u':
|
||||
use_uuidnames = true;
|
||||
break;
|
||||
|
||||
default:
|
||||
std::cerr << usage;
|
||||
return 1;
|
||||
@@ -76,6 +84,7 @@ main(int argc, char** argv)
|
||||
argc -= bu_optind;
|
||||
argv += bu_optind;
|
||||
inputFileName = argv[0];
|
||||
|
||||
if (outputFileName == NULL) {
|
||||
std::cerr << usage;
|
||||
return 1;
|
||||
@@ -99,8 +108,9 @@ main(int argc, char** argv)
|
||||
int
|
||||
main()
|
||||
{
|
||||
std::cerr << "ERROR: Boundary Representation object support is not available with\n"
|
||||
" this compilation of BRL-CAD.\n";
|
||||
std::cerr <<
|
||||
"ERROR: Boundary Representation object support is not available with\n"
|
||||
" this compilation of BRL-CAD.\n";
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -108,13 +118,11 @@ main()
|
||||
|
||||
#endif //!OBJ_BREP
|
||||
|
||||
|
||||
/*
|
||||
* Local Variables:
|
||||
* tab-width: 8
|
||||
* mode: C++
|
||||
* c-basic-offset: 4
|
||||
* indent-tabs-mode: t
|
||||
* End:
|
||||
* ex: shiftwidth=4 tabstop=8
|
||||
*/
|
||||
// Local Variables:
|
||||
// tab-width: 8
|
||||
// mode: C++
|
||||
// c-basic-offset: 4
|
||||
// indent-tabs-mode: t
|
||||
// c-file-style: "stroustrup"
|
||||
// End:
|
||||
// ex: shiftwidth=4 tabstop=8
|
||||
|
||||
@@ -4,6 +4,7 @@ endif(MSVC)
|
||||
|
||||
set(3DM_INCLUDE_DIRS
|
||||
${OPENNURBS_INCLUDE_DIRS}
|
||||
${GCV_INCLUDE_DIRS}
|
||||
${ICV_INCLUDE_DIRS}
|
||||
${WDB_INCLUDE_DIRS}
|
||||
)
|
||||
@@ -13,9 +14,11 @@ set(3dm-g_SRCS
|
||||
conv3dm-g.cpp
|
||||
3dm-g.cpp
|
||||
)
|
||||
BRLCAD_ADDEXEC(3dm-g "${3dm-g_SRCS}" "libwdb;libicv;${OPENNURBS_LIBRARY}" NO_STRICT)
|
||||
BRLCAD_ADDEXEC(3dm-g "${3dm-g_SRCS}" "libgcv;libwdb;libicv;${OPENNURBS_LIBRARY}" NO_STRICT)
|
||||
|
||||
CMAKEFILES(conv3dm-g.hpp)
|
||||
CMAKEFILES(
|
||||
conv3dm-g.hpp
|
||||
)
|
||||
|
||||
# Local Variables:
|
||||
# tab-width: 8
|
||||
|
||||
+471
-378
File diff suppressed because it is too large
Load Diff
+49
-35
@@ -17,10 +17,9 @@
|
||||
* License along with this file; see the file named COPYING for more
|
||||
* information.
|
||||
*/
|
||||
/** @file conv3dm-g.cpp
|
||||
/** @file conv3dm-g.hpp
|
||||
*
|
||||
* Program to convert a Rhino model (in a .3dm file) to a BRL-CAD .g
|
||||
* file.
|
||||
* Library for conversion of Rhino models (in .3dm files) to BRL-CAD databases.
|
||||
*
|
||||
*/
|
||||
|
||||
@@ -31,23 +30,10 @@
|
||||
#include "common.h"
|
||||
|
||||
#include <map>
|
||||
#include <memory>
|
||||
#include <set>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
|
||||
class ONX_Model;
|
||||
class ON_TextLog;
|
||||
class ON_InstanceDefinition;
|
||||
class ON_Brep;
|
||||
class ON_3dmObjectAttributes;
|
||||
class ON_Geometry;
|
||||
class ON_InstanceRef;
|
||||
class ON_Layer;
|
||||
class ON_Material;
|
||||
class ON_Bitmap;
|
||||
class ON_Mesh;
|
||||
struct rt_wdb;
|
||||
#include "wdb.h"
|
||||
|
||||
|
||||
namespace conv3dm
|
||||
@@ -69,7 +55,34 @@ public:
|
||||
|
||||
private:
|
||||
class Color;
|
||||
struct ModelObject;
|
||||
|
||||
struct UuidCompare {
|
||||
bool operator()(const ON_UUID &left, const ON_UUID &right) const;
|
||||
};
|
||||
|
||||
|
||||
class ObjectManager
|
||||
{
|
||||
public:
|
||||
ObjectManager();
|
||||
|
||||
void add(const ON_UUID &uuid, const std::string &name);
|
||||
void register_member(const ON_UUID &parent_uuid, const ON_UUID &member_uuid);
|
||||
void mark_idef_member(const ON_UUID &uuid);
|
||||
|
||||
bool exists(const ON_UUID &uuid) const;
|
||||
const std::string &get_name(const ON_UUID &uuid) const;
|
||||
const std::set<ON_UUID, UuidCompare> &get_members(const ON_UUID &uuid) const;
|
||||
bool is_idef_member(const ON_UUID &uuid) const;
|
||||
|
||||
|
||||
private:
|
||||
struct ModelObject;
|
||||
std::map<ON_UUID, ModelObject, UuidCompare> m_obj_map;
|
||||
|
||||
friend class RhinoConverter; // FIXME
|
||||
};
|
||||
|
||||
|
||||
RhinoConverter(const RhinoConverter &source);
|
||||
RhinoConverter &operator=(const RhinoConverter &source);
|
||||
@@ -77,13 +90,12 @@ private:
|
||||
void clean_model();
|
||||
void map_uuid_names();
|
||||
void create_all_bitmaps();
|
||||
void nest_all_layers();
|
||||
void create_all_layers();
|
||||
void create_all_idefs();
|
||||
void create_all_geometry();
|
||||
void create_all_objects();
|
||||
|
||||
void create_geometry(const ON_Geometry *geom,
|
||||
const ON_3dmObjectAttributes &geom_attrs);
|
||||
bool create_object(const ON_Object &object,
|
||||
const ON_3dmObjectAttributes &object_attrs);
|
||||
|
||||
void create_bitmap(const ON_Bitmap *bitmap);
|
||||
void create_layer(const ON_Layer &layer);
|
||||
@@ -98,7 +110,10 @@ private:
|
||||
void create_mesh(ON_Mesh mesh, const ON_3dmObjectAttributes &mesh_attrs);
|
||||
void create_geom_comb(const ON_3dmObjectAttributes &geom_attrs);
|
||||
|
||||
void map_name(const ON_UUID &uuid, const ON_wString &name, const char *suffix);
|
||||
|
||||
Color get_color(const ON_3dmObjectAttributes &obj_attrs) const;
|
||||
Color get_color(const ON_Layer &layer) const;
|
||||
|
||||
std::pair<std::string, std::string>
|
||||
get_shader(int index) const;
|
||||
@@ -108,10 +123,10 @@ private:
|
||||
bool m_use_uuidnames;
|
||||
bool m_random_colors;
|
||||
std::string m_output_dirname;
|
||||
std::map<std::string, ModelObject> m_obj_map;
|
||||
std::map<std::string, int> m_name_count_map;
|
||||
std::auto_ptr<ON_TextLog> m_log;
|
||||
std::auto_ptr<ONX_Model> m_model;
|
||||
ObjectManager m_objects;
|
||||
ON_TextLog m_log;
|
||||
ONX_Model m_model;
|
||||
rt_wdb *m_db;
|
||||
};
|
||||
|
||||
@@ -122,12 +137,11 @@ private:
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* Local Variables:
|
||||
* tab-width: 8
|
||||
* mode: C++
|
||||
* c-basic-offset: 4
|
||||
* indent-tabs-mode: t
|
||||
* End:
|
||||
* ex: shiftwidth=4 tabstop=8
|
||||
*/
|
||||
// Local Variables:
|
||||
// tab-width: 8
|
||||
// mode: C++
|
||||
// c-basic-offset: 4
|
||||
// indent-tabs-mode: t
|
||||
// c-file-style: "stroustrup"
|
||||
// End:
|
||||
// ex: shiftwidth=4 tabstop=8
|
||||
|
||||
@@ -1,82 +0,0 @@
|
||||
#include "solidity.h"
|
||||
|
||||
|
||||
#include <map>
|
||||
#include <set>
|
||||
|
||||
|
||||
namespace
|
||||
{
|
||||
|
||||
|
||||
typedef std::pair<std::size_t, std::size_t> Edge;
|
||||
|
||||
|
||||
static bool register_edge(
|
||||
std::vector<std::set<Edge> > &vertex_edges,
|
||||
std::map<Edge, int> &edge_incidence_map,
|
||||
std::size_t va, std::size_t vb)
|
||||
{
|
||||
const Edge edge(std::min(va, vb), std::max(va, vb));
|
||||
vertex_edges[va].insert(edge);
|
||||
vertex_edges[vb].insert(edge);
|
||||
|
||||
// test fails if any edge borders more than two faces
|
||||
return ++edge_incidence_map[edge] <= 2;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
int bot_is_closed(const rt_bot_internal *bot)
|
||||
{
|
||||
std::map<Edge, int> edge_incidence_map;
|
||||
std::vector<std::set<Edge> > vertex_edges(bot->num_vertices);
|
||||
|
||||
// map edges to number of incident faces
|
||||
// map vertices to edges
|
||||
for (std::size_t fi = 0; fi < bot->num_faces; ++fi) {
|
||||
const std::size_t v1 = bot->faces[fi * 3];
|
||||
const std::size_t v2 = bot->faces[fi * 3 + 1];
|
||||
const std::size_t v3 = bot->faces[fi * 3 + 2];
|
||||
|
||||
bool valid = register_edge(vertex_edges, edge_incidence_map, v1, v2)
|
||||
&& register_edge(vertex_edges, edge_incidence_map, v1, v3)
|
||||
&& register_edge(vertex_edges, edge_incidence_map, v2, v3);
|
||||
|
||||
if (!valid) return false;
|
||||
}
|
||||
|
||||
// all edges must border exactly two faces
|
||||
for (std::map<Edge, int>::const_iterator it = edge_incidence_map.begin();
|
||||
it != edge_incidence_map.end(); ++it)
|
||||
if (it->second != 2) return false;
|
||||
|
||||
for (std::vector<std::set<Edge> >::const_iterator
|
||||
vertex_it = vertex_edges.begin();
|
||||
vertex_it != vertex_edges.end(); ++vertex_it) {
|
||||
|
||||
// each vertex must be incident to at least two edges
|
||||
if (vertex_it->size() < 2) return false;
|
||||
|
||||
// check if the edges form a closed or open fan
|
||||
for (std::set<Edge>::const_iterator it = vertex_it->begin();
|
||||
it != vertex_it->end(); ++it) {
|
||||
// TODO
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Local Variables:
|
||||
* tab-width: 8
|
||||
* mode: C++
|
||||
* c-basic-offset: 4
|
||||
* indent-tabs-mode: t
|
||||
* End:
|
||||
* ex: shiftwidth=4 tabstop=8
|
||||
*/
|
||||
@@ -1,25 +0,0 @@
|
||||
#include "common.h"
|
||||
|
||||
|
||||
#include "raytrace.h"
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
#define EXTERN_C extern "C"
|
||||
#else
|
||||
#define EXTERN_C
|
||||
#endif
|
||||
|
||||
|
||||
EXTERN_C int bot_is_closed(const rt_bot_internal *bot);
|
||||
|
||||
|
||||
/*
|
||||
* Local Variables:
|
||||
* tab-width: 8
|
||||
* mode: C++
|
||||
* c-basic-offset: 4
|
||||
* indent-tabs-mode: t
|
||||
* End:
|
||||
* ex: shiftwidth=4 tabstop=8
|
||||
*/
|
||||
+25
-10
@@ -107,10 +107,15 @@ usage(const char *argv0)
|
||||
"\t\t\t3 = cw\n"
|
||||
);
|
||||
|
||||
bu_log(" -t mm\t\tDistance tolerance. Two vertices are considered to be the same\n"
|
||||
bu_log(" -f\t\tFuse vertices that are close enough to be considered the\n"
|
||||
"\t\tsame. Can make the solidity detection more reliable.\n"
|
||||
"\t\tMay significantly increase processing time during import.\n"
|
||||
" -t mm\t\tDistance tolerance. Two vertices are considered to be the same\n"
|
||||
"\t\tif they are within this distance of one another. Default is\n"
|
||||
"\t\t.0005mm. You should not change this value without setting the\n"
|
||||
"\t\traytracer tolerance to match it.\n"
|
||||
);
|
||||
|
||||
bu_log("\t\t.0005mm. You should not change this value without setting the\n"
|
||||
"\t\traytracer tolerance to match it.\n"
|
||||
" -u units\tSelect units for the obj file: (m|cm|mm|ft|in). Default is m.\n"
|
||||
"\t\tYou can also provide a custom conversion factor from file units\n"
|
||||
"\t\tto mm.\n"
|
||||
@@ -2039,6 +2044,8 @@ populate_fuse_map(struct ga_t *ga,
|
||||
fuse_offset = gfi->vertex_fuse_offset;
|
||||
}
|
||||
|
||||
/* the loop below is the expensive part of the fusing operation. */
|
||||
|
||||
/* only set the flag for duplicates */
|
||||
idx1 = 0;
|
||||
while (idx1 < num_unique_index_list) {
|
||||
@@ -3115,6 +3122,7 @@ process_b_mode_option(struct ga_t *ga,
|
||||
struct rt_wdb *outfp,
|
||||
fastf_t conv_factor,
|
||||
struct bn_tol *tol,
|
||||
int fuse_vertices,
|
||||
fastf_t bot_thickness, /* bot plate thickness (mm) */
|
||||
int normal_mode, /* PROC_NORM, IGNR_NORM */
|
||||
int plot_mode, /* PLOT_OFF, PLOT_ON */
|
||||
@@ -3123,7 +3131,10 @@ process_b_mode_option(struct ga_t *ga,
|
||||
char bot_orientation,
|
||||
int face_test_type) /* TEST_ALL, TEST_NUM_VERT */
|
||||
{
|
||||
(void)fuse_vertex(ga, gfi, conv_factor, tol, FUSE_VERT, FUSE_EQUAL);
|
||||
if (fuse_vertices) {
|
||||
(void)fuse_vertex(ga, gfi, conv_factor, tol, FUSE_VERT, FUSE_EQUAL);
|
||||
}
|
||||
|
||||
(void)retest_grouping_faces(ga, gfi, conv_factor, face_test_type, tol);
|
||||
if (!test_closure(ga, gfi, conv_factor, plot_mode, face_test_type, tol)) {
|
||||
(void)output_to_bot(ga, gfi, outfp, conv_factor, tol, bot_thickness,
|
||||
@@ -3249,6 +3260,7 @@ main(int argc, char **argv)
|
||||
time_t overall_elapsed_time;
|
||||
struct tm *timep;
|
||||
char bot_orientation = RT_BOT_UNORIENTED;
|
||||
int fuse_vertices = 0;
|
||||
|
||||
bu_setprogname(argv[0]);
|
||||
|
||||
@@ -3277,7 +3289,7 @@ main(int argc, char **argv)
|
||||
bu_exit(1, NULL);
|
||||
}
|
||||
|
||||
while ((c = bu_getopt(argc, argv, "cpidx:X:vt:h:m:u:g:o:r:")) != -1) {
|
||||
while ((c = bu_getopt(argc, argv, "cpidfx:X:vt:h:m:u:g:o:r:")) != -1) {
|
||||
switch (c) {
|
||||
case 'c': /* continue processing on nmg bomb */
|
||||
cont_on_nmg_bomb_flag = 1;
|
||||
@@ -3309,6 +3321,9 @@ main(int argc, char **argv)
|
||||
case 'v': /* displays additional information of user interest */
|
||||
verbose++;
|
||||
break;
|
||||
case 'f': /* vertex fusing is very expensive; disabled by default */
|
||||
fuse_vertices = 1;
|
||||
break;
|
||||
case 't': /* distance tolerance in mm units */
|
||||
dist_tmp = (double)atof(bu_optarg);
|
||||
if (dist_tmp <= 0.0) {
|
||||
@@ -3630,7 +3645,7 @@ main(int argc, char **argv)
|
||||
switch (mode_option) {
|
||||
case 'b':
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor,
|
||||
tol, bot_thickness, normal_mode, plot_mode,
|
||||
tol, fuse_vertices, bot_thickness, normal_mode, plot_mode,
|
||||
open_bot_output_mode, bot_orientation,
|
||||
native_face_test_type);
|
||||
break;
|
||||
@@ -3687,7 +3702,7 @@ main(int argc, char **argv)
|
||||
|
||||
switch (mode_option) {
|
||||
case 'b':
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor, tol, bot_thickness,
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor, tol, fuse_vertices, bot_thickness,
|
||||
normal_mode, plot_mode, open_bot_output_mode, bot_orientation,
|
||||
native_face_test_type);
|
||||
break;
|
||||
@@ -3734,7 +3749,7 @@ main(int argc, char **argv)
|
||||
|
||||
switch (mode_option) {
|
||||
case 'b':
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor, tol, bot_thickness,
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor, tol, fuse_vertices, bot_thickness,
|
||||
normal_mode, plot_mode, open_bot_output_mode, bot_orientation,
|
||||
native_face_test_type);
|
||||
break;
|
||||
@@ -3781,7 +3796,7 @@ main(int argc, char **argv)
|
||||
|
||||
switch (mode_option) {
|
||||
case 'b':
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor, tol, bot_thickness,
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor, tol, fuse_vertices, bot_thickness,
|
||||
normal_mode, plot_mode, open_bot_output_mode, bot_orientation,
|
||||
native_face_test_type);
|
||||
break;
|
||||
@@ -3828,7 +3843,7 @@ main(int argc, char **argv)
|
||||
|
||||
switch (mode_option) {
|
||||
case 'b':
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor, tol, bot_thickness,
|
||||
process_b_mode_option(&ga, gfi, fd_out, conv_factor, tol, fuse_vertices, bot_thickness,
|
||||
normal_mode, plot_mode, open_bot_output_mode, bot_orientation,
|
||||
native_face_test_type);
|
||||
break;
|
||||
|
||||
@@ -108,11 +108,70 @@ BRLCADWrapper::WriteSphere(double *center, double radius)
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/* This simple routine will replace diacritic characters(code >= 192) from the extended
|
||||
* ASCII set with a specific mapping from the standard ASCII set. This code was copied
|
||||
* and modified from a solution provided on stackoverflow.com at:
|
||||
* (http://stackoverflow.com/questions/14094621/)
|
||||
*/
|
||||
std::string
|
||||
BRLCADWrapper::ReplaceAccented( std::string &str ) {
|
||||
std::string retStr = "";
|
||||
const char *p = str.c_str();
|
||||
while ( (*p)!=0 ) {
|
||||
const char*
|
||||
// "ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖרÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"
|
||||
tr = "AAAAAAECEEEEIIIIDNOOOOOx0UUUUYPsaaaaaaeceeeeiiiiOnooooo/0uuuuypy";
|
||||
unsigned char ch = (*p);
|
||||
if ( ch >=192 ) {
|
||||
retStr += tr[ ch-192 ];
|
||||
} else {
|
||||
retStr += *p;
|
||||
}
|
||||
++p;
|
||||
}
|
||||
return retStr;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Simplifying names for better behavior under our Tcl based tools. This routine
|
||||
* replaces spaces and non-alphanumeric characters with underscores. It also replaces
|
||||
* ASCII extended characters representing diacritics (code >= 192) with specific
|
||||
* mapped ASCII characters below ASCII code 128.
|
||||
*/
|
||||
std::string
|
||||
BRLCADWrapper::CleanBRLCADName(std::string &inname)
|
||||
{
|
||||
std::string retStr = "";
|
||||
std::string name = ReplaceAccented(inname);
|
||||
char *cp;
|
||||
|
||||
for (cp = (char *)name.c_str(); *cp != '\0'; ++cp) {
|
||||
if (*cp == '\'') {
|
||||
// remove non-printable
|
||||
continue;
|
||||
}
|
||||
if (*cp == ' ') {
|
||||
// replace spaces with underscores
|
||||
retStr += '_';
|
||||
} else {
|
||||
if (!isalpha(*cp) && !isdigit(*cp)) {
|
||||
// replace non-alphanumeric characters with underscore
|
||||
retStr += '_';
|
||||
} else {
|
||||
retStr += *cp;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return retStr;
|
||||
}
|
||||
|
||||
|
||||
std::string
|
||||
BRLCADWrapper::GetBRLCADName(std::string &name)
|
||||
{
|
||||
std::ostringstream str;
|
||||
std::string strcnt;
|
||||
struct bu_vls obj_name = BU_VLS_INIT_ZERO;
|
||||
int len = 0;
|
||||
char *cp,*tp;
|
||||
@@ -125,9 +184,19 @@ BRLCADWrapper::GetBRLCADName(std::string &name)
|
||||
else
|
||||
break;
|
||||
}
|
||||
bu_vls_putc(&obj_name, *cp);
|
||||
if (*cp == '\'') {
|
||||
// remove single quotes
|
||||
continue;
|
||||
}
|
||||
if (*cp == ' ') {
|
||||
// simply replace spaces with underscores
|
||||
bu_vls_putc(&obj_name, '_');
|
||||
} else {
|
||||
bu_vls_putc(&obj_name, *cp);
|
||||
}
|
||||
}
|
||||
bu_vls_putc(&obj_name, '\0');
|
||||
|
||||
tp = (char *)((*cp == '\0') ? "" : cp + 1);
|
||||
|
||||
do {
|
||||
@@ -201,8 +270,6 @@ BRLCADWrapper::getRandomColor(unsigned char *rgb)
|
||||
bool
|
||||
BRLCADWrapper::WriteBrep(std::string name, ON_Brep *brep, mat_t &mat)
|
||||
{
|
||||
std::ostringstream str;
|
||||
std::string strcnt;
|
||||
std::string sol = name + ".s";
|
||||
std::string reg = name;
|
||||
|
||||
|
||||
@@ -61,6 +61,8 @@ public:
|
||||
bool WriteBrep(std::string name, ON_Brep *brep, mat_t &mat);
|
||||
bool WriteCombs();
|
||||
bool AddMember(const std::string &combname,const std::string &member,mat_t mat);
|
||||
std::string ReplaceAccented( std::string &str );
|
||||
std::string CleanBRLCADName(std::string &name);
|
||||
std::string GetBRLCADName(std::string &name);
|
||||
static void getRandomColor(unsigned char *rgb);
|
||||
struct db_i * GetDBIP();
|
||||
|
||||
@@ -89,32 +89,15 @@ bool STEPWrapper::convert(BRLCADWrapper *dot_g)
|
||||
} else {
|
||||
int sdr_id = sdr->GetId();
|
||||
std::string pname = sdr->GetProductName();
|
||||
pname = dotg->CleanBRLCADName(pname);
|
||||
int product_id = sdr->GetProductId();
|
||||
|
||||
id2productid_map[sdr_id] = product_id;
|
||||
|
||||
if (pname.empty()) {
|
||||
std::string str = "ShapeDefinitionRepresentation@";
|
||||
str = dotg->GetBRLCADName(str);
|
||||
id2name_map[sdr_id] = pname;
|
||||
} else {
|
||||
std::string temp = pname;
|
||||
int index = 2;
|
||||
while ((niter=name2id_map.find(temp)) != name2id_map.end()) {
|
||||
temp = pname + "_" + static_cast<ostringstream*>( &(ostringstream() << (index++)) )->str();
|
||||
}
|
||||
pname = temp;
|
||||
if ((niter=name2id_map.find(pname)) == name2id_map.end()) {
|
||||
id2name_map[sdr_id] = pname;
|
||||
name2id_map[pname] = product_id;
|
||||
id2name_map[product_id] = pname;
|
||||
}
|
||||
}
|
||||
|
||||
AdvancedBrepShapeRepresentation *aBrep = sdr->GetAdvancedBrepShapeRepresentation();
|
||||
if (aBrep) {
|
||||
if (pname.empty()) {
|
||||
std::string str = "product@";
|
||||
if (pname.empty() || (pname.compare("''") == 0)) {
|
||||
std::string str = "Product@";
|
||||
pname = dotg->GetBRLCADName(str);
|
||||
id2name_map[aBrep->GetId()] = pname;
|
||||
id2name_map[product_id] = pname;
|
||||
@@ -125,8 +108,8 @@ bool STEPWrapper::convert(BRLCADWrapper *dot_g)
|
||||
id2productid_map[aBrep->GetId()] = product_id;
|
||||
|
||||
if (Verbose()) {
|
||||
if (!pname.empty()) {
|
||||
std::cerr << std::endl << " Generating Product -" << pname ;
|
||||
if (!pname.empty() && (pname.compare("''") != 0)) {
|
||||
std::cerr << std::endl << " Generating Product - " << pname ;
|
||||
} else {
|
||||
std::cerr << std::endl << " Generating Product";
|
||||
}
|
||||
@@ -177,8 +160,8 @@ bool STEPWrapper::convert(BRLCADWrapper *dot_g)
|
||||
delete onBrep;
|
||||
}
|
||||
} else { // must be an assembly
|
||||
if (pname.empty()) {
|
||||
std::string str = "assembly@";
|
||||
if (pname.empty() || (pname.compare("''") == 0)) {
|
||||
std::string str = "Assembly@";
|
||||
pname = dotg->GetBRLCADName(str);
|
||||
}
|
||||
ShapeRepresentation *aSR = sdr->GetShapeRepresentation();
|
||||
@@ -240,12 +223,19 @@ bool STEPWrapper::convert(BRLCADWrapper *dot_g)
|
||||
|
||||
it = id2productid_map.find(brep_id);
|
||||
if (it == id2productid_map.end()) { // brep not loaded yet so lets do that here.
|
||||
string pname = id2name_map[product_id];
|
||||
string pname = id2name_map[brep_id];
|
||||
if (pname.empty() || (pname.compare("''") == 0)) {
|
||||
std::string str = "Brep_@";
|
||||
pname = dotg->GetBRLCADName(str);
|
||||
id2name_map[aBrep->GetId()] = pname;
|
||||
} else {
|
||||
id2name_map[aBrep->GetId()] = pname;
|
||||
}
|
||||
id2productid_map[brep_id] = product_id;
|
||||
|
||||
if (Verbose()) {
|
||||
if (!pname.empty()) {
|
||||
std::cerr << std::endl << " Generating Product -" << pname ;
|
||||
if (!pname.empty() && (pname.compare("''") != 0)) {
|
||||
std::cerr << std::endl << " Generating Product - " << pname ;
|
||||
} else {
|
||||
std::cerr << std::endl << " Generating Product";
|
||||
}
|
||||
@@ -294,6 +284,13 @@ bool STEPWrapper::convert(BRLCADWrapper *dot_g)
|
||||
|
||||
delete onBrep;
|
||||
}
|
||||
if (product_id != brep_id) {
|
||||
mat_t mat;
|
||||
|
||||
MAT_IDN(mat);
|
||||
string comb = id2name_map[product_id];
|
||||
dotg->AddMember(comb,pname,mat);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1470,7 +1470,7 @@ Path::LoadONTrimmingCurves(ON_Brep *brep)
|
||||
|
||||
// build surface tree making sure not to remove trimmed subsurfaces
|
||||
// since currently building trims and need full tree
|
||||
bool removeTrimmed = false;
|
||||
// bool removeTrimmed = false;
|
||||
|
||||
//TODO: remove debugging code
|
||||
if ((false) && (id == 24894)) {
|
||||
@@ -2688,10 +2688,10 @@ Line::SetParameterTrim(double start_param, double end_param)
|
||||
t = start_param;
|
||||
s = end_param;
|
||||
|
||||
ON_3dPoint start = pnt->Point3d();
|
||||
ON_3dPoint ptstart = pnt->Point3d();
|
||||
ON_3dVector vdir = dir->Orientation();
|
||||
ON_3dPoint end = start + (vdir*dir->Magnitude());
|
||||
ON_Line l(start, end);
|
||||
ON_3dPoint ptend = ptstart + (vdir*dir->Magnitude());
|
||||
ON_Line l(ptstart, ptend);
|
||||
|
||||
if (s < t) {
|
||||
double tmp = s;
|
||||
|
||||
+1
-1
@@ -68,7 +68,7 @@ static int blueflag = 0;
|
||||
static char *framebuffer = NULL;
|
||||
static char *file_name;
|
||||
static int infd;
|
||||
static FBIO *fbp;
|
||||
static fb *fbp;
|
||||
|
||||
static char usage[] = "\
|
||||
Usage: bw-fb [-a -i -c -z -R -G -B] [-F framebuffer]\n\
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user