🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: vmsnet.sources
Article #123

xv-2-21a changes to run on VMS, part 06/08

#123
From: Rick Dyson
Date: Wed, 04 Nov 1992 21:12
1265 lines
50059 bytes
Submitted-by: dyson@iowasp.physics.uiowa.edu (Rick Dyson)
Posting-number: Volume 3, Issue 238
Archive-name: xv-2-21_vms_changes/part06
Supersedes: xv-2-21_vms_changes: Volume 2, Issue 83-86

-+-+-+-+-+-+-+-+ START OF PART 6 -+-+-+-+-+-+-+-+
X\ind`7B1\parindent`7D\begin`7BTPlist`7D`7B$\bullet$`7D
X\item`5B`7B$\bullet$`7D`5D
Xturn`20all`20the`20blues`20in`20an`20image`20into`20reds
X\item`5B`7B$\bullet$`7D`5D
Xchange`20the`20tint`20of`20an`20image
X\item`5B`7B$\bullet$`7D`5D
Xchange`20a`20greyscale`20image`20into`20a`20mauve-scale`20image
X\item`5B`7B$\bullet$`7D`5D
Xincrease`20or`20decrease`20the`20amount`20of`20color`20saturation`20in`20an
V`20image
X\item`5B`7B$\bullet$`7D`5D
Xchange`20the`20overall`20brightness`20of`20an`20image
X\item`5B`7B$\bullet$`7D`5D
Xchange`20the`20overall`20contrast`20of`20an`20image
X\end`7BTPlist`7D
X
X\IPitem`7B`7B$\bullet$`7D`7D
XRGB`20Modification:`20This`20tool`20lets`20you`20route`20the`20red,`20green,
V`20and`20blue
Xcolor`20components`20of`20an`20image`20through`20independent`20mapping`20funct
Vions.
XThe`20functions`20can`20either`20be`20the`20standard`20gamma`20function,`20or
V`20any
Xarbitrary`20function`20that`20can`20be`20drawn`20with`20straight`20line`20segm
Vents`20or`20a
Xcubic`20spline.`20`20See`20`60`60Section`205.3.4:`20The`20Intensity`20Graph''
V`20for`20more`20info
Xabout`20graph`20functions.
X\end`7BIPlist`7D
X
X\noindent
XThe`20major`20use`20of`20the`20RGB`20Modification`20tool`20is`20to`20correct
V`20for`20the
Xdiffering`20color`20response`20curves`20of`20various`20color`20monitors,`20pri
Vnters,`20and
Xscanners.`20`20This`20is`20the`20tool`20to`20use`20when`20`60`60the`20image
V`20is`20too`20red'',`20for
Xinstance.
X
XThese`20three`20tools`20are`20tied`20together`20in`20a`20fixed`20order.`20`20T
Vhe`20Colormap
XEditing`20tool`20operates`20on`20the`20original`20colors`20in`20the`20image.
V`20`20The`20output`20of
Xthis`20tool`20is`20piped`20into`20the`20HSV`20Modification`20tool.`20`20Its
V`20output`20is`20piped
Xinto`20the`20RGB`20Modification`20tool.`20`20The`20output`20from`20the`20RGB
V`20Modification
Xtool`20is`20what`20actually`20gets`20displayed.
X
XIn`20addition`20there`20is`20a`20collection`20of`20buttons`20that`20control
V`20the`20`7B\it`20xv
Xcolor`20editor`7D`20as`20a`20whole`20(more`20or`20less).
X
XDon't`20Panic!`20`20It's`20not`20as`20complicated`20as`20it`20looks.
X
X\shead`7BSection`205.2:`20`20The`20Colormap`20Editing`20Tool`7D
X
XThe`20top`20portion`20of`20this`20window`20shows`20the`20colormap`20of`20the
V`20current
Ximage.`20`20There`20are`2016`20cells`20across,`20and`20up`20to`2016`20rows`20d
Vown,`20for`20a
Xmaximum`20of`20256`20color`20cells.`20`20Only`20cells`20actually`20used`20some
Vwhere`20in`20the
Ximage`20are`20shown`20in`20this`20array.
X
XThe`20currently`20selected`20color`20cell`20is`20shown`20with`20a`20thick`20bo
Vrder.`20`20You
Xcan`20change`20the`20selection`20by`20clicking`20anywhere`20in`20the`20array.
V`20`20If`20you
Xdrag`20the`20mouse`20through`20this`20area,`20you'll`20see`20the`20dials`20at
V`20the`20bottom
Xchange`20to`20track`20the`20current`20pixel`20values.
X
XYou`20can`20also`20select`20a`20color`20cell`20by`20clicking`20anywhere`20in
V`20the`20image
Xwindow.`20`20Whichever`20pixel`20value`20you`20were`20on`20when`20you`20let
V`20go`20of`20the
Xmouse`20will`20become`20the`20new`20selected`20color`20cell.
X
XYou`20can`20define`20a`20smoothly`20gradated`20range`20of`20colors`20by`20%
X\it`20Left`20\rm%
Xclicking`20on
Xthe`20color`20cell`20that`20marks`20the`20'start'`20of`20the`20range,`20and
V`20%
X\it`20Middle`20\rm%
Xclicking`20on`20the`20color`20cell`20that`20marks`20the`20'end'`20of`20the`20r
Vange.
XIntervening`20color`20cells`20will`20be`20interpolated`20between`20the`20color
Vs`20of`20the
X'start'`20and`20'end'`20colorcells.
X
XAs`20an`20example:
X\begin`7BTPlist`7D`7B$\bullet$`7D
X\item`5B`7B$\bullet$`7D`5D
XView`20the`20'default'`20image`20by`20running`20%
X`7B\it`20xv`7D
Xwithout`20specifying`20any`20filenames.
X\item`5B`7B$\bullet$`7D`5D
XOpen`20the`20%
X\it`20xv`20color`20editor`20\rm%
Xwindow,`20and`20%
X\it`20Left`20\rm%
Xclick`20on`20the`20first`20
Xcolor`20cell.
X\item`5B`7B$\bullet$`7D`5D
XTurn`20this`20color`20cell`20%
X\it`20red`20\rm%
Xby`20setting`20the`20RGB`20dials`20to`20255,0,0.
X\item`5B`7B$\bullet$`7D`5D
X%
X\it`20Left`20\rm%
Xclick`20on`20the`2064th`20color`20cell`20(the`20rightmost`20color`20cell`20in
V`20the`20
Xlast`20complete`20row).
X\item`5B`7B$\bullet$`7D`5D
XTurn`20this`20color`20cell`20%
X\it`20yellow`20\rm%
Xby`20setting`20the`20RGB`20dials`20to`20255,255,0.
X\item`5B`7B$\bullet$`7D`5D
X%
X\it`20Middle`20\rm%
Xclick`20on`20the`20first`20color`20cell.`20`20A`20smooth`20series`20of
X%
X\it`20yellowish-reds`20\rm%
Xwill`20be`20generated`20from`20the`2064th`20color`20cell`20to`20the`20first
Xcolor`20cell.`20`20Note`20that`20the`20'direction'`20doesn't`20matter.
X\end`7BTPlist`7D
X
X\noindent
XSince`20certain`20images`20will`20have`20many`20colors`20that`20are`20the`20sa
Vme,`20or
Xnearly`20the`20same,`20it`20is`20sometimes`20convenient`20to`20group`20color
V`20cells
Xtogether.`20`20Grouped`20color`20cells`20all`20take`20on`20the`20same`20color,
V`20and
Xchanging`20any`20one`20of`20them`20affects`20all`20of`20the`20other`20colors
V`20in`20the`20group.
X
XTo`20group`20color`20cells`20together,`20do`20the`20following:
X\begin`7BTPlist`7D`7B$\bullet$`7D
X\item`5B`7B$\bullet$`7D`5D
XHold`20down`20the`20$<$shift$>$`20key.
X\item`5B`7B$\bullet$`7D`5D
XLeft`20click`20on`20one`20color`20cell`20that`20you`20would`20like`20to`20be
V`20in`20the`20group
X\item`5B`7B$\bullet$`7D`5D
XRight`20click`20on`20other`20color`20cells`20that`20you`20wish`20to`20be`20in
V`20this`20group.`20`20(Right`20clicking`20on`20cells`20that`20are`20already
V`20selected`20will`20de-select`20them.)
X\item`5B`7B$\bullet$`7D`5D
XRelease`20the`20$<$shift$>$`20key`20when`20you're`20done.
X\end`7BTPlist`7D
X
X\noindent
XYou`20can`20create`20as`20many`20groups`20as`20you`20like.
X
XYou`20can`20use`20this`20grouping/ungrouping`20technique`20to`20copy`20colors
V`20from`20one
Xcolor`20cell`20to`20another.`20`20Left`20click`20on`20the`20source`20color`20c
Vell,`20Right
Xclick`20on`20the`20destination`20color`20cell,`20and`20Right`20click`20on`20th
Ve
Xdestination`20color`20cell`20again`20(to`20ungroup`20it).
X
X\shead`7BSection`205.2.1:`20`20Using`20the`20Dial`20Controls`7D
X
XAt`20the`20bottom`20the`20Colormap`20Editing`20tool`20are`20three`20dials`20th
Vat`20let`20you
Xset`20the`20color`20of`20the`20current`20color`20cell`20(or`20group`20of`20cel
Vls).`20`20By
Xdefault,`20the`20dials`20control`20the`20Red,`20Green,`20and`20Blue`20componen
Vts`20of`20the
XRGB`20colorspace,`20but`20they`20can`20also`20control`20the`20Hue,`20Saturatio
Vn,`20and
XValue`20components`20of`20the`20HSV`20colorspace.`20`20(The`20%
X\bf`20RGB/HSV`20\rm%
Xbutton`20controls
Xthis.)
X
XRegardless`20of`20what`20they`20control,`20all`20dials`20in`20%
X`7B\it`20xv`7D
Xwork`20the`20same`20way.
XClicking`20on`20the`20single`20arrows`20increase/decrease`20the`20value`20by
V`201.
XClicking`20on`20the`20double`20arrows`20increase/decrease`20the`20value`20by
V`20a`20larger
Xamount`20(16`20in`20this`20case).`20`20If`20you`20click`20on`20one`20of`20the
V`20arrows,`20and`20hold
Xthe`20mouse`20button`20down,`20the`20increase/decrease`20will`20repeat`20until
V`20you
Xrelease`20the`20mouse`20button.
X
XYou`20can`20also`20click`20in`20the`20general`20area`20of`20the`20pointer`20an
Vd`20simply`20drag
Xit`20to`20the`20position`20you`20want.`20`20The`20further`20your`20mouse`20cur
Vsor`20is`20from
Xthe`20center`20of`20the`20dial,`20the`20more`20precise`20the`20control`20will
V`20be.`20`20While
Xdragging,`20you`20do`20not`20have`20to`20keep`20the`20cursor`20inside`20the
V`20dial`20window.
X
X\shead`7BSection`205.2.2:`20`20Colormap`20Editing`20Commands`7D
X
X\begin`7BIPlist`7D
X\IPitem`7B`7B\bf`20ColUndo`7D`7D
XUndoes`20the`20last`20change`20made`20to`20the`20colormap`20that`20resulted
V`20in`20a`20color
Xcell`20changing`20value.`20`20This`20includes`20grouping`20and`20ungrouping
V`20color
Xcells,`20and`20changing`20any`20of`20the`20dials.
X
X\IPitem`7B`7B\bf`20Revert`7D`7D
XUndoes`20all`20color`20changes.`20`20Returns`20the`20colormap`20to`20its`20ori
Vginal`20state.
XDestroys`20any`20groups`20that`20you`20may`20have`20created.
X
XIPitem`7B`7B\bf`20RGB/HSV`7D`7D
XToggles`20the`20Colormap`20Editing`20dials`20between`20editing`20colors`20in
V`20terms`20of
XRed,`20Green,`20and`20Blue,`20and`20editing`20colors`20in`20terms`20of`20Hue,
V`20Saturation,`20and
XValue.
X
X\IPitem`7B`7B\bf`20Grey`7D`7D
XTurns`20color`20images`20into`20greyscale`20images`20by`20changing`20the`20col
Vormap.`20`20This
Xreplaces`20each`20color`20cell`20with`20a`20greyscale`20representation`20of
V`20itself.`20`20Use
Xthe`20`7B\bf`20Revert`7D`20command`20to`20restore`20the`20colors.
X
X\IPitem`7B`7B\bf`20RevVid`7D`7D
XThis`20command`20behaves`20differently,`20depending`20on`20the`20setting`20of
V`20the`20RGB/HSV
Xmode.`20`20(You`20can`20tell`20which`20mode`20you're`20in`20by`20the`20titles
V`20on`20the`20dials.)
X
XIn`20RGB`20mode,`20each`20color`20component`20is`20separately`20'inverted'.
V`20`20For`20example,
XYellow`20(which`20is`20composed`20of`20full`20red,`20full`20green,`20and`20no
V`20blue)`20would
Xturn`20to`20Blue`20(no`20red,`20no`20green,`20full`20blue).
X
XIn`20HSV`20mode,`20only`20the`20Value`20(intensity)`20component`20is`20'invert
Ved'.`20`20The`20Hue
Xand`20Saturation`20components`20remain`20the`20same.`20`20In`20this`20mode,
V`20bright`20colors
Xturn`20to`20dark`20versions`20of`20the`20same`20color.`20`20For`20example,`20a
V`20Yellow`20would
Xturn`20Brown.
X
X\IPitem`7B`7B\bf`20Random`7D`7D
XGenerates`20a`20random`20colormap.`20`20This`20is`20of`20questionable`20useful
Vness,`20but`20it
Xwill`20occasionally`20come`20up`20with`20pleasing`20color`20combinations`20tha
Vt`20you`20never
Xwould've`20come`20up`20with`20yourself.`20`20So`20it`20stays`20in.`20`20It`20w
Vorks`20best`20on`20images
Xwith`20a`20small`20number`20of`20colors.`20`20Note`20that`20it`20respects`20ce
Vll`20groupings,`20so
Xif`20your`20image`20has`20a`20lot`20of`20colors,`20you`20can`20create`20a`20fe
Vw`20large`20groups`20and
Xthen`20use`20the`20Random`20command.
X\end`7BIPlist`7D
X
X\noindent
XNote:`20It`20is`20HIGHLY`20RECOMMENDED`20that`20if`20you're`20using`20the`20Co
Vlormap`20Editing
Xtool,`20you`20do`20NOT`20use`20the`20HSV`20Modification`20tool`20or`20the`20RG
VB`20Modification
Xtool`20as`20well.`20`20If`20you`20do,`20the`20results`20can`20be`20quite`20con
Vfusing.`20`20For
Xexample,`20you`20might`20edit`20a`20color`20cell,`20and`20set`20its`20color
V`20values`20to`20produce
Xa`20purple.`20`20However,`20because`20of`20HSV/RGB`20Modification`20further
V`20down`20the
Xline,`20the`20actual`20color`20displayed`20on`20the`20image`20(and`20in`20the
V`20color`20cell)`20is
Xyellow.`20`20Very`20confusing,`20indeed.
X
X\shead`7BSection`205.3:`20`20The`20HSV`20Modification`20Tool`7D
X
XThere`20are`20four`20separate`20controls`20in`20the`20HSV`20Modification`20too
Vl.`20`20At`20the
Xtop`20of`20the`20window`20are`20a`20pair`20of`20circular`20controls`20that`20h
Vandle`20hue
Xremapping.`20`20Lower`20down`20is`20a`20circular`20control`20that`20maps`20'wh
Vite'`20(and
Xgreys)`20to`20a`20specified`20color.`20`20There`20is`20a`20dial`20control`20th
Vat`20lets`20you
Xsaturate/desaturate`20the`20colors`20of`20the`20current`20information.`20`20Fi
Vnally,
Xat`20the`20bottom`20there`20is`20a`20graph`20window`20that`20lets`20you`20modi
Vfy`20intensity
Xvalues`20via`20an`20arbitrary`20remapping`20function.
X
X\shead`7BSection`205.3.1:`20`20Hue`20Remapping`20Controls`7D
X
XThese`20two`20dials`20are`20used`20to`20define`20a`20source`20and`20a`20destin
Vation`20range`20of
Xhue`20values.`20`20Every`20hue`20in`20the`20source`20range`20(defined`20in`20t
Vhe`20From`20dial)
Xgets`20mapped`20to`20the`20value`20of`20the`20corresponding`20point`20in`20the
V`20destination
Xrange`20(defined`20in`20the`20To`20dial).
X
XEach`20dial`20has`20a`20pair`20of`20radial`20lines`20with`20handles`20at`20the
Vir`20ends.
XBetween`20the`20two`20lines`20an`20arc`20is`20drawn`20with`20an`20arrow`20at
V`20one`20end.`20`20The
Xwedge`20drawn`20by`20these`20lines`20and`20the`20arc`20defines`20a`20range`20o
Vf`20values`20(in
Xdegrees).`20`20The`20direction`20of`20the`20arc`20(clockwise,`20or`20counter-c
Vlockwise)
Xdetermines`20the`20direction`20of`20this`20range`20of`20values`20(increasing
V`20or
Xdecreasing).
X
XDistributed`20around`20the`20dial`20are`20tick`20marks`20and`20the`20letters
V`20'R',`20'Y',
X'G',`20'C',`20'B',`20and`20'M'.`20`20These`20letters`20stand`20for`20the`20col
Vors`20Red,
XYellow,`20Green,`20Cyan,`20Blue,`20and`20Magenta,`20and`20they`20show`20where
V`20these
Xcolors`20appear`20on`20the`20circle.
X
XThe`20range`20is`20shown`20numerically`20below`20the`20control.`20`20By`20defa
Vult`20the
Xrange`20is`20'330,`2030`20CW'.`20`20This`20means`20that`20a`20range`20of`20val
Vues`20`5B330,`20331,
X332,`20$\ldots$`20359,`200,`201,`20$\ldots$`2028,`2029,`2030`5D`20has`20been
V`20defined.`20`20Note`20that
X(being`20a`20circle)`20it`20wraps`20back`20to`200`20after`20359.
X
XThe`20range`20can`20be`20changed`20in`20many`20different`20ways.`20`20You`20ca
Vn`20click`20on`20
Xthe`20'handles'`20at`20the`20end`20of`20the`20radial`20lines`20and`20move`20th
Vem`20around.`20`20If`20you
Xclick`20inside`20the`20dial,`20but`20not`20on`20one`20of`20the`20handles,`20yo
Vu'll`20be`20able
Xto`20drag`20the`20range`20around`20as`20a`20single`20object.`20`20There`20are
V`20also`205`20buttons
Xbelow`20the`20dial`20that`20let`20you`20rotate`20the`20range,`20flip`20the`20d
Virection`20of
Xthe`20range,`20and`20increase/decrease`20the`20size`20of`20the`20range`20while
V`20keeping
Xit`20centered`20around`20the`20same`20value.
X
XIn`20its`20default`20state,`20the`20To`20dial`20is`20set`20to`20the`20same`20r
Vange`20as`20the`20From
Xdial.`20`20When`20the`20two`20dials`20are`20set`20to`20the`20same`20range,`20t
Vhey`20are
Xeffectively`20'turned`20off',`20and`20ignored.
X
XAn`20example`20of`20hue`20remapping:
X\begin`7BTPlist`7D`7B$\bullet$`7D
X\item`5B`7B$\bullet$`7D`5D
XAs`20a`20simple`20example`20of`20the`20sort`20of`20things`20you`20can`20do`20w
Vith`20the`20hue
Xremapping`20control,`20we'll`20change`20the`20background`20color`20of`20the
V`20default
X(%
X`7B\it`20xv`7D
Xlogo)`20image`20without`20changing`20any`20other`20colors`20in`20the`20image.
V`20`20Since
Xthe`20background`20is`20composed`20of`20a`20gradient`20of`2064`20colors,`20you
V`20would`20not
Xwant`20to`20do`20this`20with`20the`20Colormap`20Editing`20tool.`20`20It`20woul
Vd`20take
Xforever.
X\item`5B`7B$\bullet$`7D`5D
XFirst,`20get`20the`20default`20image`20up`20on`20the`20screen`20by`20running
V`20'xv'`20without
Xgiving`20any`20filenames.`20`20Open`20up`20the`20%
X\it`20xv`20color`20editor`20\rm%
Xwindow`20via`20the
X%
X\bf`20ColEdit`20\rm%
Xcommand.
X\item`5B`7B$\bullet$`7D`5D
XNext,`20click`20the`20mouse`20in`20the`20image`20window`20and`20drag`20it`20ar
Vound.`20`20You'll
Xsee`20that`20all`20the`20background`20pixels`20have`20the`20same`20Hue`20compo
Vnent`20value
X(240).
X\item`5B`7B$\bullet$`7D`5D
XTo`20remap`20this`20hue,`20simply`20adjust`20the`20From`20dial`20so`20that`20i
Vts`20range
Xincludes`20this`20Hue`20value.`20`20The`20background`20should`20change`20from
V`20'blue'`20to
Xa`20reddish`20color,`20assuming`20the`20To`20dial`20is`20still`20set`20to`20it
Vs`20default
Xrange`20(centered`20around`20'R').`20`20If`20more`20than`20the`20background
V`20changed
Xcolor,`20you`20can`20shrink`20the`20From`20range`20so`20that`20it`20covers`20f
Vewer`20colors.
XIn`20fact,`20it's`20possible`20to`20shrink`20the`20range`20to`20the`20point
V`20where`20it`20only
Xcovers`20only`20a`20single`20value.
X\end`7BTPlist`7D
X
X\noindent
XNote`20that`20the`20values`20printed`20when`20you`20are`20tracking`20pixel`20v
Values`20in`20the
Ximage`20are`20the`20values`20before`20the`20HSV`20Modification`20tool`20is`20a
Vpplied.`20`20For
Xexample,`20the`20background`20of`20the`20default`20image`20will`20still`20clai
Vm`20to`20be
Xblue,`20regardless`20of`20what`20color`20you`20may`20have`20changed`20it`20to.
V`20`20This`20is`20so
Xthat`20you`20know`20what`20Hue`20value`20you`20will`20need`20to`20remap`20if
V`20you`20want`20to
Xchange`20its`20color`20again.
X
XIf`20you`20press`20the`20Reset`20button`20that`20is`20located`20near`20the`20h
Vue`20remapping
Xcontrols,`20it`20will`20effectively`20disable`20the`20hue`20remapping`20by`20s
Vetting`20the
XTo`20range`20equal`20to`20the`20From`20range.
X
XBelow`20the`20hue`20remapping`20controls`20are`20a`20group`20of`20'radio`20but
Vtons'.`20`20You
Xcan`20have`20up`20to`20six`20different`20hue`20remappings`20happening`20simult
Vaneously.
XHigher`20numbered`20mappings`20take`20precedence`20over`20lower`20number`20map
Vpings.
X
XAn`20example`20of`20multiple`20hue`20remappings:
X\begin`7BTPlist`7D`7B$\bullet$`7D
X\item`5B`7B$\bullet$`7D`5D
XDraw`20a`20From`20range`20that`20is`20a`20complete`20circle.`20`20The`20easies
Vt`20way`20to`20do
Xthis`20is`20to`20draw`20a`20range`20that`20is`20nearly`20a`20full`20circle,
V`20then`20click`20and
Xhold`20down`20the`20'increase`20range'`20button`20located`20below`20the`20From
V`20range
Xdial`20until`20the`20range`20stops`20getting`20bigger.
X\item`5B`7B$\bullet$`7D`5D
XCopy`20this`20range`20to`20the`20To`20range`20by`20pressing`20the`20Reset`20bu
Vtton.
X\item`5B`7B$\bullet$`7D`5D
XRotate`20the`20To`20range`20slightly,`20by`20either`20clicking`20and`20draggin
Vg`20anywhere
Xin`20the`20To`20range`20dial,`20or`20by`20using`20the`20'rotate`20clockwise'
V`20and`20'rotate
Xcounter-clockwise'`20buttons`20located`20below`20the`20To`20range.
X\item`5B`7B$\bullet$`7D`5D
XYou've`20just`20built`20yourself`20what`20is`20effectively`20a`20tint`20contro
Vl.
X\item`5B`7B$\bullet$`7D`5D
XNow,`20suppose,`20you'd`20like`20to`20adjust`20the`20background`20color`20of
V`20your
X(tint-modified)`20image,`20without`20affecting`20anything`20else.`20`20Clickin
Vg`20on
Xthe`20background`20in`20the`20image`20window`20reveals`20that`20the`20backgrou
Vnd`20still
Xhas`20an`20(original)`20hue`20of`20240.`20`20To`20modify`20this`20hue`20withou
Vt`20affecting
Xanything`20else,`20we'll`20need`20a`20second`20hue`20remapping.
X\item`5B`7B$\bullet$`7D`5D
XClick`20on`20the`202`20radio`20button.`20`20The`20dials`20will`20change`20to
V`20some`20other
Xdefault`20setting.`20`20As`20before,`20set`20the`20From`20range`20to`20encompa
Vss`20the`20value
X240,`20preferably`20as`20'tightly'`20as`20possible,`20and`20set`20the`20To`20r
Vange`20to
Xproduce`20the`20desired`20background`20color.
X\end`7BTPlist`7D
X
X\noindent
XNote`20that`20the`20six`20hue`20remappings`20are`20not`20'cascaded'.`20`20The
V`20output`20of
Xone`20remapping`20is`20not`20fed`20as`20input`20into`20any`20of`20the`20other
V`20hue
Xremappings.`20`20The`20hue`20remappings`20always`20operate`20on`20the`20hue
V`20values`20in
Xthe`20original`20image.`20`20In`20this`20example,`20if`20remapping`20\#1`20add
Vs`2032`20to`20all
Xhue`20values,`20thereby`20mapping`20the`20blue`20background`20(value`20240)
V`20into`20a
Xpurple-blue`20(value`20272),`20remapping`20\#2`20still`20sees`20the`20backgrou
Vnd`20at
X240,`20and`20can`20remap`20it`20to`20anything`20it`20likes.`20`20Similarly,
V`20in`20the`20same
Xexample,`20if`20remapping`20\#1`20has`20mapped`20a`20green-blue`20color`20(val
Vue`20208)
Xinto`20blue`20(value`20240),`20remapping`20\#2`20will`20not`20map`20this`20int
Vo`20another
Xcolor.`20`20As`20far`20as`20remapping`20\#2`20is`20concerned,`20that`20green-b
Vlue`20is`20still
Xgreen-blue.
X
XIf`20it`20seems`20complicated,`20I'm`20sorry.`20`20It`20is.
X
X\shead`7BSection`205.3.2:`20`20The`20White`20Remapping`20Control`7D
X
XIn`20the`20HSV`20colorspace,`20'white'`20(including`20black,`20and`20all`20the
V`20greys`20in
Xbetween)`20has`20no`20Hue`20or`20Saturation`20components.`20`20As`20such,`20it
V`20is`20not
Xpossible`20to`20use`20the`20hue`20remapping`20controls`20to`20change`20the`20c
Volor`20of
Xwhite`20pixels`20in`20the`20image,`20since`20they`20have`20no`20'color'`20to
V`20change.
X
XThe`20white`20remapping`20control`20provides`20a`20way`20to`20add`20Hue`20and
V`20Saturation
Xcomponents`20to`20all`20the`20whites`20in`20the`20image.`20`20It`20consists
V`20of`20a`20movable
Xpoint`20in`20a`20color`20dial.`20`20The`20angle`20of`20the`20dot`20from`20the
V`20center`20of`20the
Xdial`20determines`20the`20Hue`20component.`20`20The`20distance`20of`20the`20do
Vt`20from`20the
Xcenter`20of`20the`20dial`20determines`20the`20Saturation`20component.`20`20The
V`20further
Xthe`20dot`20is`20from`20the`20center`20of`20the`20dial,`20the`20more`20saturat
Ved`20the`20color
Xwill`20be.
X
XYou`20can`20control`20the`20white`20remapping`20control`20in`20several`20ways.
V`20`20You`20can
Xclick`20on`20the`20handle`20and`20drag`20it`20around`20with`20the`20mouse.`20
V`20There`20are`20also
Xfour`20buttons`20provided`20under`20the`20dial.`20`20One`20pair`20allows`20you
V`20to`20rotate
Xthe`20handle`20clockwise`20and`20counter-clockwise`20without`20changing`20its
Xdistance`20from`20the`20center.`20`20The`20other`20pair`20of`20buttons`20lets
V`20you`20change
Xthe`20distance`20between`20the`20handle`20and`20the`20center`20without`20chang
Ving`20the
Xangle.
X
XThe`20current`20Hue`20and`20Saturation`20values`20provided`20by`20the`20contro
Vl`20is
Xdisplayed`20below`20the`20dial.`20`20The`20first`20number`20is`20the`20Hue`20c
Vomponent,`20in
Xdegrees,`20and`20the`20second`20is`20the`20Saturation`20component,`20as`20a
V`20percentage.
X
XThere`20is`20also`20a`20checkbox`20that`20will`20let`20you`20turn`20off`20the
V`20white
Xremapping`20control.`20`20This`20lets`20you`20quickly`20compare`20your`20modif
Vied
X'white'`20with`20the`20original`20white.`20`20You`20can`20also`20effectively
V`20disable`20the
Xwhite`20remapping`20control`20by`20putting`20the`20handle`20back`20in`20the
V`20center`20of
Xthe`20control.`20`20The`20easiest`20way`20to`20do`20this`20is`20to`20click`20a
Vnd`20hold`20the
X'move`20towards`20center'`20button`20until`20the`20saturation`20gets`20down
V`20to`200\%.
X
XExample:`20`20
X\begin`7BTPlist`7D`7B$\bullet$`7D
X\item`5B`7B$\bullet$`7D`5D
XPress`20the`20Grey`20control`20in`20the`20Colormap`20Editing`20tool.`20`20This
V`20turns`20all
Xthe`20colors`20in`20the`20image`20into`20shades`20of`20grey.
X\item`5B`7B$\bullet$`7D`5D
XDrag`20the`20handle`20in`20the`20white`20remapping`20control`20halfway`20down
V`20towards
Xthe`20'R'`20mark.`20`20The`20Hue`20and`20Saturation`20values`20should`20be`20r
Voughly
X0--degrees`20and`2050\%.`20`20The`20image`20should`20now`20be`20displayed`20in
V`20shades`20of
Xpink.
X
X\end`7BTPlist`7D
X
X\shead`7BSection`205.3.3:`20`20The`20Saturation`20Control`7D
X
XThe`20saturation`20control`20lets`20you`20globally`20increase`20or`20decrease
V`20the
Xcolor`20saturation`20of`20the`20image.`20`20In`20effect,`20it`20is`20much`20li
Vke`20the`20'color'
Xcontrol`20on`20most`20color`20televisions.
X
XThe`20saturation`20control`20is`20a`20dial`20that`20operates`20exactly`20like
V`20the`20dials
Xdescribed`20in`20`60`60Section`205.2.1`20Using`20the`20Dial`20Controls''.`20
V`20In`20short,`20you
Xcan`20click`20and`20hold`20down`20any`20of`20the`20four`20buttons`20in`20the
V`20bottom`20of`20the
Xcontrol`20to`20increase`20or`20decrease`20the`20control's`20value.`20`20You
V`20can`20also
Xclick`20on`20the`20dial`20itself`20and`20move`20the`20pointer`20around`20direc
Vtly.
X
XThe`20saturation`20control`20has`20values`20that`20range`20from`20'--100\%'
V`20to`20'+100\%'.
XAt`20its`20default`20setting`20of`20'0\%',`20the`20saturation`20control`20has
V`20no`20effect
Xon`20the`20image.`20`20As`20the`20values`20increase,`20the`20colors`20become
V`20more
Xsaturated,`20up`20to`20'+100\%'`20where`20every`20color`20is`20fully`20saturat
Ved.
XLikewise,`20as`20values`20decrease,`20the`20colors`20become`20desaturated.`20
V`20At
X'--100\%',`20every`20color`20will`20become`20a`20completely`20desaturated`20(
V`7B\it`20i.e.`7D,`20a
Xshade`20of`20grey).`20`20Note`20that`20this`20control`20is`20applied`20after
V`20the`20the`20White
XRemapping`20control,`20so`20if`20you`20'greyify'`20the`20image`20by`20complete
Vly
Xdesaturating`20it,`20you`20will`20not`20be`20able`20to`20color`20it`20using
V`20the`20White
XRemapping`20control.
X
XUnless`20you're`20trying`20for`20some`20special`20effects,`20the`20useful`20ra
Vnge`20of
Xthis`20control`20is`20probably`20'+/--20\%'.`20`20Also`20note`20that`20the`20c
Vontrol`20will
Xhave`20no`20effect`20on`20shades`20of`20grey,`20as`20they`20have`20no`20color
V`20to`20saturate.
X
X\shead`7BSection`205.3.4:`20`20The`20Intensity`20Graph`7D
X
XThe`20intensity`20graph`20allows`20you`20to`20change`20the`20brightness`20of
V`20the`20image,
Xchange`20the`20contrast`20of`20the`20image,`20and`20get`20some`20unique`20effe
Vcts.
X
XThe`20intensity`20graph`20is`20a`20function`20that`20lets`20you`20remap`20inte
Vnsity`20values
X(the`20Value`20component`20in`20HSV`20Colorspace)`20into`20other`20intensity
V`20values.
XThe`20input`20and`20output`20values`20of`20this`20function`20both`20range`20fr
Vom`200`20to`20255.
XThe`20input`20values`20range`20along`20the`20x`20axis`20of`20this`20graph`20(t
Vhe
Xhorizontal).`20`20For`20every`20input`20value`20(point`20along`20the`20x`20axi
Vs)`20there`20is
Xa`20unique`20output`20value`20determined`20by`20the`20height`20of`20the`20grap
Vh`20at`20that
Xpoint.`20`20In`20the`20graph's`20default`20state,`20the`20function`20is`20a
V`20straight`20line
Xfrom`20bottom-left`20to`20top-right.`20`20In`20this`20case,`20each`20input`20v
Value
Xproduces`20an`20equivalent`20output`20value,`20and`20the`20graph`20has`20no
V`20effect.
X
XThere`20are`20a`20number`20of`20'handles'`20along`20the`20graph.`20`20These
V`20provide`20your
Xmajor`20means`20of`20interacting`20with`20the`20graph.`20`20You`20can`20move
V`20them`20around
Xarbitrarily,`20subject`20to`20these`20two`20constraints:`20the`20handles`20at
V`20the`20far
Xleft`20and`20far`20right`20of`20the`20graph`20can`20only`20be`20moved`20vertic
Vally,`20and
Xhandles`20must`20remain`20between`20their`20neighboring`20handles`20for`20the
V`20graph`20to
Xremain`20a`20proper`20function.
X
XThe`20handles`20are`20normally`20connected`20by`20a`20spline`20curve.`20`20To
V`20see`20this,
Xmove`20one`20of`20the`20handles`20by`20clicking`20and`20dragging`20it.`20`20(N
Vote`20that`20the
X%
X\it`20x,y`20\rm%
Xposition`20of`20the`20current`20handle`20is`20displayed`20while`20the`20mouse
Xbutton`20is`20held`20down.)`20`20The`20function`20will`20remain`20a`20smoothly
V`20curved`20line
Xthat`20passes`20through`20all`20the`20handles.`20`20You`20can`20change`20this
V`20behavior`20by
Xputting`20the`20function`20into`20'lines'`20mode.`20`20Press`20the`20'lines'
V`20button
X(the`20second`20button`20down`20from`20the`20top).`20`20The`20function`20will
V`20change`20to`20a
Xseries`20of`20line`20segments`20that`20connect`20the`20handles.`20`20Press`20t
Vhe`20'spline'
Xbutton`20(the`20top`20button)`20to`20go`20back`20to`20'spline'`20mode.
X
XThe`20next`20two`20buttons`20let`20you`20add`20or`20delete`20handles.`20`20The
V`20'add`20handle'
Xbutton`20will`20insert`20a`20handle`20into`20the`20largest`20'gap'`20in`20the
V`20function.
XThe`20'delete`20handle'`20button`20will`20remove`20a`20handle`20from`20the`20s
Vmallest
X'gap'`20in`20the`20function.`20`20You`20can`20have`20as`20little`20as`202`20ha
Vndles,`20or`20as
Xmany`20as`2016.`20`20Note`20that`20as`20the`20number`20of`20handles`20gets`20l
Varge,`20the`20spline
Xwill`20start`20getting`20out`20of`20control.`20`20You`20may`20wish`20to`20swit
Vch`20to`20'lines'
Xmode`20in`20this`20case.
X
XThe`20'Reset'`20button`20puts`20everything`20back`20on`20a`20straight`20line
V`20connecting
Xbottom-left`20to`20top-right`20(a`201:1`20function).`20`20It`20does`20not`20ch
Vange`20the
Xnumber`20of`20handles,`20nor`20does`20it`20change`20the`20x-positions`20of`20t
Vhe`20handles.
X
XThe`20'Gam'`20button`20lets`20you`20set`20the`20function`20curve`20by`20enteri
Vng`20a`20single
Xnumber.`20`20The`20function`20is`20set`20equal`20to`20the`20gamma`20function:
X\begin`7BIPlist`7D
X\IPitem`7B`7B`7D`7D
XY`20=`20255`20*`20(I/255)`20\`5E`7B`7D`20(1/g)
X\end`7BIPlist`7D
X
X\noindent
Xwhere`20I`20is`20the`20input`20value`20(0--255),`20g`20is`20the`20gamma`20valu
Ve,`20and`20Y`20is`20the
Xcomputed`20result.
X
XGamma`20values`20(for`20our`20purposes)`20can`20range`20between`200`20and`2010
V000,`20non-inclusive.
X\begin`7BTPlist`7D`7B$\bullet$`7D
X\item`5B`7B$\bullet$`7D`5D
XA`20gamma`20value`20of`20'1.00'`20results`20in`20the`20normal`201:1`20straight
V`20line.
X\item`5B`7B$\bullet$`7D`5D
XGamma`20values`20of`20less`20than`201.00`20but`20greater`20than`200.00`20resul
Vt`20in
X'exponential'`20curves,`20which`20will`20dim`20the`20image.
X\item`5B`7B$\bullet$`7D`5D
XGamma`20values`20greater`20than`201.00`20result`20in`20'logarithmic'`20curves,
V`20which
Xwill`20brighten`20the`20image.`20`20Try`20it`20and`20see.
X\end`7BTPlist`7D
X
X\noindent
XThere`20is`20a`20shortcut`20for`20the`20'Gam'`20button.`20`20Type`20'g'`20whil
Ve`20the`20mouse`20is
Xinside`20the`20graph`20window.
X
XAlso,`20touching`20any`20of`20the`20handles`20after`20a`20'Gam'`20command`20wi
Vll`20put`20the
Xgraph`20back`20into`20its`20'normal'`20mode.`20`20(Either`20'spline'`20or`20'l
Vines'
Xdepending`20on`20which`20of`20the`20top`20two`20buttons`20is`20turned`20on.)
X
XGenerally,`20whenever`20you`20move`20a`20graph`20handle`20and`20let`20go`20of
V`20it,`20the
Ximage`20will`20be`20redrawn`20to`20show`20you`20the`20effects`20of`20what`20yo
Vu've`20done.
XThis`20can`20be`20time-consuming`20if`20you`20intend`20to`20move`20many`20poin
Vts`20around.
XYou`20can`20temporarily`20prevent`20the`20redisplay`20of`20the`20image`20by
V`20holding`20down
Xa`20$<$shift$>$`20key.`20`20Continue`20to`20hold`20the`20$<$shift$>$`20key`20d
Vown`20while`20you`20move
Xthe`20handles`20to`20the`20new`20position.`20`20Release`20the`20$<$shift$>$
V`20key`20when`20you're
Xdone,`20and`20the`20image`20will`20be`20redisplayed.
X
X\shead`7BSection`205.4:`20`20The`20RGB`20Modification`20Tool`7D
X
XThe`20RGB`20Modification`20tool`20is`20a`20collection`20of`20three`20graph`20w
Vindows,`20each
Xof`20which`20operate`20on`20one`20of`20the`20components`20of`20the`20RGB`20col
Vorspace.`20`20This
Xtool`20lets`20you`20perform`20global`20color-correction`20on`20the`20image`20b
Vy`20boosting
Xor`20cutting`20the`20values`20of`20one`20or`20more`20of`20the`20RGB`20color
V`20components.`20`20You
Xcan`20use`20this`20to`20correct`20for`20color`20screens`20that`20are`20'too
V`20blue',`20or`20for
Xcolor`20printers`20that`20produce`20'brownish'`20output,`20or`20whatever.
X
XThe`20graphs`20work`20exactly`20as`20explained`20in`20`60`60Section`205.3.4:
V`20`20The`20Intensity
XGraph''.
X
XNeat`20Trick:`20In`20addition`20to`20color-correction,`20you`20can`20use`20the
V`20RGB
Xmodification`20tool`20to`20add`20color`20to`20images`20that`20didn't`20have
V`20color`20to
Xbegin`20with.`20`20For`20instance,`20you`20can`20'pseudo-color'`20a`20greyscal
Ve`20image.
X
XAn`20example`20of`20pseudo-coloring:
X\begin`7BTPlist`7D`7B$\bullet$`7D
X\item`5B`7B$\bullet$`7D`5D
XAdjust`20the`20Red`20graph`20so`20that`20there`20is`20a`20strong`20red`20prese
Vnce`20on`20the
Xright`20side`20of`20the`20graph,`20and`20none`20on`20the`20left,`20or`20in`20t
Vhe`20middle.
X\item`5B`7B$\bullet$`7D`5D
XAdjust`20the`20Green`20graph`20so`20that`20there`20is`20a`20strong`20green`20p
Vresence`20in`20the
Xmiddle`20of`20the`20graph,`20and`20none`20on`20the`20left`20or`20right.
X\item`5B`7B$\bullet$`7D`5D
XAdjust`20the`20Blue`20graph`20so`20that`20there`20is`20a`20strong`20blue`20pre
Vsence`20on`20the
Xleft`20side`20of`20the`20graph,`20and`20none`20on`20the`20left,`20or`20in`20th
Ve`20middle.
X\end`7BTPlist`7D
X
X\noindent
XYou`20now`20have`20a`20transformation`20that`20will`20take`20greyscale`20image
Vs`20and
Xdisplay`20them`20in`20pseudo-color,`20using`20a`20'temperature'`20color`20sche
Vme.
XNeato!
X
X\shead`7BSection`205.5:`20`20The`20Color`20Editor`20Controls`7D
X
XThese`20buttons`20provide`20general`20control`20over`20the`20whole`20%
X\it`20xv`20color`20editor`20\rm%
Xwindow.`20`20You`20can`20display`20the`20image`20with`20or`20without`20color
V`20modification,
Xsave`20and`20recall`20presets,`20and`20undo/redo`20changes.`20`20Also,`20conve
Vnience
Xcontrols`20are`20given`20for`20performing`20some`20of`20the`20most`20common
V`20operations
Xon`20the`20Intensity`20graph.
X
X\begin`7BIPlist`7D
X\IPitem`7B`7B%
X\bf`20Apply\rm%
X\`20\`20(Keyboard\`20equivalent\`20'p')`7D`7D
XDisplays`20the`20image`20using`20the`20current`20HSV`20and`20RGB`20Modificatio
Vns.`20`20Also
Xturns`20the`20'Display`20with`20HSV/RGB`20mods'`20checkbox`20on.`20`20(See`20b
Velow.)
X
XThis`20is`20only`20useful`20when`20the`20'Auto-apply`20HSV/RGB`20mods'`20check
Vbox`20is
Xoff.
X
X\IPitem`7B`7B%
X\bf`20NoMod\rm%
X`7D`7D
XDisplays`20the`20image`20without`20any`20HSV`20or`20RGB`20Modifications.`20
V`20Also`20turns
Xthe`20'Display`20with`20HSV/RGB`20mods'`20checkbox`20off.
X
X\IPitem`7B`7B%
X\bf`20Reset\rm%
X\`20\`20(Keyboard\`20equivalent\`20'R')`7D`7D
XResets`20all`20HSV`20and`20RGB`20controls`20to`20their`20default`20settings.
V`20`20Doesn't
Xaffect`20the`20Colormap`20Editing`20tool.
X
X\IPitem`7B`7B%
X\bf`20Undo\rm%
X`7D`7D
XUndoes`20the`20last`20change`20to`20the`20HSV`20or`20RGB`20controls.
X
XIt`20may`20be`20helpful`20to`20think`20of`20%
X`7B\it`20xv`7D
Xas`20maintaining`20a`20series`20of`2032
X'snapshots'`20of`20the`20HSV`20and`20RGB`20controls.`20`20You`20are`20normally
V`20looking`20at
Xthe`20last`20frame`20in`20this`20series.`20`20The`20%
X\bf`20Undo`20\rm%
Xcontrol`20moves`20you`20backwards
Xin`20the`20series.
X
X\IPitem`7B`7B%
X\bf`20Redo\rm%
X`7D`7D
XOnly`20available`20after`20you've`20hit`20Undo.`20`20Moves`20you`20forward`20i
Vn`20the
X'snapshot'`20series`20described`20above.`20`20Note`20that`20if`20you`20have
V`20hit`20%
X\bf`20Undo`20\rm%
Xa
Xfew`20times`20(`7B\it`20i.e.`7D,`20you're`20now`20looking`20at`20some`20frame
V`20in`20the`20middle`20of`20the
Xseries),`20and`20you`20change`20an`20HSV`20or`20RGB`20control,`20all`20subsequ
Vent`20frames
Xin`20the`20series`20are`20thrown`20away,`20and`20the`20current`20state`20becom
Ves`20that`20last
Xframe`20in`20the`20series.
X
X\IPitem`7B`7B%
X\bf`201,2,3,4\rm%
X`7D`7D
XPressing`20any`20of`20these`20buttons`20recalls`20a`20preset`20(a`20complete
V`20set`20of
Xvalues`20for`20the`20HSV`20and`20RGB`20controls).
X
X\IPitem`7B`7B%
X\bf`20Set\rm%
X`7D`7D
XUsed`20in`20conjunction`20with`20the`20%
X\bf`20Reset,1,2,3,4`20\rm%
Xbuttons`20to`20store`20the`20current
Xsettings`20of`20the`20HSV`20and`20RGB`20controls`20into`20a`20preset.`20`20To
V`20do`20so,`20press
Xthe`20%
X\bf`20Set`20\rm%
Xbutton,`20and`20then`20press`20one`20of`20the`20%
X\bf`20Reset,1,2,3,4`20\rm%
X
Xbuttons.`20`20The
Xcurrent`20HSV`20and`20RGB`20control`20settings`20will`20be`20stored`20in`20tha
Vt`20preset,`20as
Xlong`20as`20%
X`7B\it`20xv`7D
Xcontinues`20running.`20`20The`20values`20will`20be`20lost`20when`20the
Xprogram`20exits.`20`20It`20is`20also`20possible`20to`20save`20these`20values
V`20permanently.
XSee`20the`20%
X\bf`20CutRes`20\rm%
Xbutton`20(below)`20and`20`60`60Section`209:`20Modifying`20XV
XBehavior''`20for`20more`20details.
X
X\IPitem`7B`7B%
X\bf`20CutRes\rm%
X`7D`7D
XCopies`20the`20current`20settings`20of`20the`20HSV`20and`20RGB`20controls,`20a
Vs`20text,`20into
Xthe`20X`20server's`20cut`20buffer.`20`20You`20can`20then`20use`20a`20text`20ed
Vitor`20to`20paste
Xthese`20values`20into`20your`20'.Xdefaults'`20(or`20'.Xresources')`20file.`20
V`20This
Xlets`20you`20save`20the`20current`20settings`20'permanently'.`20`20See`20`60
V`60Section`209:
XModifying`20XV`20Behavior''`20for`20more`20details.
X
X\IPitem`7B`7B%
X\bf`20Close\rm%
X`7D`7D
XThis`20button`20closes`20the`20%
X\it`20xv`20color`20editor`20\rm%
Xwindow.
X
X\IPitem`7B`7B%
X\bf`20Brite\rm%
X`7D`7D
XBrightens`20the`20image`20by`20moving`20all`20the`20handles`20in`20the`20Inten
Vsity`20graph
Xup`20by`20a`20constant`20amount.
X
X\IPitem`7B`7B%
X\bf`20Dim\rm%
X`7D`7D
XDarkens`20the`20image`20by`20moving`20all`20the`20handles`20in`20the`20Intensi
Vty`20graph
Xdown`20by`20a`20constant`20amount.
X
X\IPitem`7B`7B%
X\bf`20Sharp\rm%
X`7D`7D
XIncreases`20the`20contrast`20of`20the`20image`20by`20moving`20handles`20on`20t
Vhe`20left`20side
Xof`20the`20Intensity`20graph`20down,`20and`20handles`20on`20the`20right`20side
V`20up.
X
X\IPitem`7B`7B%
X\bf`20Dull\rm%
X`7D`7D
XDecreases`20the`20contrast`20of`20the`20image`20by`20moving`20handles`20on`20t
Vhe`20left`20side
Xof`20the`20Intensity`20graph`20up,`20and`20handles`20on`20the`20right`20side
V`20down.
X
X\IPitem`7B`7B`7B\bf`20Norm`7D`20`20(Keyboard`20equivalent`20'N')`7D`7D
XNormalizes`20the`20image`20so`20that`20the`20darkest`20pixels`20in`20the`20ima
Vge`20are`20given`20an
Xintensity`20of`20'0',`20and`20the`20brightest`20pixels`20in`20the`20image`20ar
Ve`20given`20an
Xintensity`20of`20'255'.`20`20Intermediate`20c`20This`20forces`20the`20image
V`20to`20have`20the
Xfull`20(maximum)`20dynamic`20range.
X
X\IPitem`7B`7B`7B\bf`20HistEQ`7D`20`20(Keyboard`20equivalent`20'H')`7D`7D
XRuns`20a`20histogram`20equalization`20algorithm`20on`20the`20currently`20displ
Vayed`20
Xregion`20of`20the`20image.`20`20This`20is,`20if`20you're`20cropped,`20it`20wil
Vl`20only`20run`20the
Xalgorithm`20on`20the`20cropped`20section.`20`20Not
Xmodification`20it`20makes`20to`20the`20image`20is`20to`20generate`20a`20bizarr
Ve`20corrective
XIntensity`20curve.`20`20As`20such,`20if`20you`20%
X\bf`20HistEQ`20\rm%
Xa`20section`20of`20the`20image,`20then
X%
X\bf`20UnCrop\rm%
X,`20the`20rest`20of`20the`20image`20will`20probably`20not`20be`20what`20you'd
V`20want.
XAlso`20note`20that`20the`20histogram`20curve`20will`20'go`20away'`20if`20you
V`20touch`20any`20of`20the
Xhandles`20in`20the`20Intensity`20graph`20window,`20just`20like`20a`20'gamma'
V`20curve`20would.
X
X\end`7BIPlist`7D
X
X\noindent
XThe`20'Display`20with`20HSV/RGB`20mods'`20checkbox`20tells`20you`20whether`20o
Vr`20you're
Xlooking`20at`20a`20modified`20image`20(checked)`20or`20the`20'raw',`20unmodifi
Ved`20image
X(unchecked).`20`20The`20%
X\bf`20Apply`20\rm%
Xand`20%
X\bf`20NoMod`20\rm%
Xbuttons`20change`20the`20setting`20of`20
Xthis`20checkbox,`20and`20you`20can`20also`20change`20the`20checkbox`20directly
V`20by`20clicking`20on
Xit.
X
XThe`20'Auto-apply`20HSV/RGB`20mods'`20checkbox`20controls`20whether`20or`20not
V`20the
Xprogram`20regenerates`20and`20redisplays`20the`20image`20after`20each`20change
V`20to`20an
XHSV`20or`20RGB`20control.`20`20By`20default,`20this`20checkbox`20is`20turned
V`20on,`20so`20that
Xyou`20can`20easily`20see`20the`20results`20of`20your`20modifications.`20`20How
Vever,`20in`20the
Xcase`20that`20you`20want`20to`20make`20a`20large`20number`20of`20changes`20at
V`20once,`20it`20might
Xbe`20preferable`20to`20turn`20automatic`20redisplay`20off`20for`20a`20while,
V`20to`20speed
Xthings`20up.
X
XThe`20'Auto-reset`20on`20new`20image'`20checkbox`20controls`20whether`20or`20n
Vot`20the`20HSV
Xand`20RGB`20controls`20are`20%
X\bf`20Reset`20\rm%
Xback`20to`20their`20default`20values`20whenever`20a`20new
Ximage`20is`20loaded`20up.`20`20By`20default,`20this`20is`20also`20turned`20on,
V`20as`20when
Xyou're`20playing`20with`20the`20HSV/RGB`20controls,`20you`20probably`20only
V`20want`20to
Xaffect`20the`20current`20image,`20and`20not`20all`20subsequently`20loaded`20im
Vages`20as
Xwell.
X
X\shead`7BSECTION`206:`20`20THE`20LOAD`20WINDOW`7D
X
XThe`20%
X\it`20xv`20load`20\rm%
Xwindow`20lets`20you`20load`20and`20view`20images`20interactively,
Xwithout`20specifying`20them`20on`20the`20command`20line`20when`20you`20start
V`20%
X\it`20xv\rm%
X.
X
XThe`20load`20window`20shows`20the`20contents`20of`20the`20current`20directory
V`20in`20a
Xscrolling`20window.`20`20The`20files`20will`20be`20sorted`20alphabetically,
V`20with`20all
Xthe`20directories`20(and`20symbolic`20links`20to`20directories,`20if`20your
V`20operating
Xsystem`20supports`20them)`20displayed`20first.
X
XThis`20list`20window`20operates`20in`20the`20same`20way`20that`20the`20one`20i
Vn`20the`20%
X`7B\it`20xv`7D
Xcontrols`20window`20works.`20`20(See`20`60`60Section`203.7.1:`20Operating`20a
V`20List`20Window''
Xfor`20details.)`20`20In`20short,`20you`20can`20operate`20the`20scroll`20bar,
V`20drag`20the
Xhighlight`20bar`20around`20the`20window,`20and`20use`20the`20up-arrow,`20down-
Varrow,
XHome,`20End,`20Page`20Up,`20and`20Page`20Down`20keys`20on`20your`20keyboard.
X
XWhenever`20you`20click`20on`20a`20name`20in`20the`20list`20(or`20otherwise`20c
Vhange`20the
Xposition`20of`20the`20highlight`20bar),`20the`20name`20of`20the`20highlighted
V`20file`20is
Xcopied`20to`20the`20`60`60Load`20file''`20text`20entry`20region,`20located`20b
Velow`20the`20list
Xwindow.`20`20Pressing`20the`20Ok`20button`20(or`20typing`20$<$return$>$)`20wil
Vl`20cause`20the
Xprogram`20to`20attempt`20to`20load`20the`20specified`20file.`20`20If`20the`20l
Voad`20attempt`20is
Xsuccessful,`20the`20load`20window`20will`20disappear,`20and`20the`20new`20imag
Ve`20will`20be
Xdisplayed.`20`20Otherwise,`20an`20error`20message`20will`20be`20displayed,`20a
Vnd`20the
Xload`20window`20will`20remain`20visible.
X
XThe`20%
X\bf`20Browse`20\rm%
Xcheckbox`20overrides`20this`20behavior,`20and`20keeps`20the`20load
Xwindow`20visible`20until`20it`20is`20explicitly`20closed`20via`20the`20%
X\bf`20Cancel`20\rm%
Xbutton.`20`20This`20is`20handy`20if`20you're`20using`20%
X`7B\it`20xv`7D
Xto`20'wander`20around`20a
Xdirectory`20tree',`20and`20plan`20to`20be`20using`20the`20%
X\bf`20Load`20\rm%
Xcommand`20quite
Xoften.
X
XIf`20the`20image`20is`20successfully`20loaded,`20its`20name`20will`20be`20adde
Vd`20to`20the`20
X%
X\it`20xv`20controls`20\rm%
Xwindow`20list.`20`20This`20will`20let`20you`20quickly`20reload`20it`20later
Xwithout`20have`20to`20go`20through`20the`20%
X\it`20xv`20load`20\rm%
Xwindow`20again.
X
XYou`20can`20also`20load`20a`20file`20by`20double-clicking`20on`20its`20name
V`20in`20the`20file`20list.
X
XIf`20the`20specified`20filename`20begins`20with`20a`20'!'`20or`20'$`7C$'`20cha
Vracter,`20the
Xfilename`20will`20be`20interpeted`20as`20a`20shell`20command`20to`20run.`20
V`20The
Xleading`20'!'`20or`20'$`7C$'`20gets`20stripped`20off,`20and`20the`20rest`20of
V`20the`20line
Xis`20fed`20to`20the`20default`20system`20shell.`20`20The`20command`20is`20expe
Vcted`20to`20
Xgenerate`20an`20image`20in`20one`20of`20the`20formats`20that`20%
X`7B\it`20xv`7D
Xrecognizes.`20`20This
Ximage`20is`20expected`20to`20be`20the`20stdout`20of`20the`20specified`20comman
Vd.`20`20If`20the
Xcommand`20returns`20non-zero,`20it`20is`20assumed`20that`20the`20command`20fai
Vled,`20and`20
Xno`20image`20is`20loaded.`20`20You`20can`20pipe`20multiple`20commands`20togeth
Ver.
XFor`20example,`20loading`20`60`60!`20xwd`20$`7C$`20xwdtopnm''`20would`20run
V`20%
X\it`20xwd`20\rm%
Xto`20generate
Xa`20window`20dump,`20pipe`20that`20to`20%
X\it`20xwdtopnm`20\rm%
Xto`20convert`20it`20to`20a`20PPM`20file,`20
Xwhich`20in`20turn`20is`20piped`20to`20%
X\it`20xv\rm%
X.
X
XIf`20the`20specified`20file`20is`20a`20directory,`20%
X`7B\it`20xv`7D
Xwill`20figure`20that`20out`20and
X(instead`20of`20loading`20it)`20will`20'cd'`20to`20that`20directory,`20and`20d
Visplay`20its
Xcontents`20in`20the`20list`20window.
X
XAbove`20the`20list`20window`20is`20a`20pop-up`20menu`20button,`20much`20like
V`20the`20%
X\bf`20Display
XModes`20\rm%
Xbutton`20in`20the`20%
X\it`20xv`20controls`20\rm%
Xwindow.`20`20It`20normally`20displays`20the`20name
Xof`20the`20current`20directory.`20`20If`20you`20click`20this`20button,`20and
V`20hold`20the
Xmouse`20down,`20the`20complete`20path`20will`20be`20shown,`20one`20directory
V`20per`20line.
XYou`20can`20go`20'up'`20the`20directory`20tree`20any`20number`20of`20levels,
V`20all`20the`20way
Xup`20to`20the`20root`20directory,`20by`20simply`20selecting`20a`20directory
V`20name`20in`20this
Xlist.
X
XFor`20those`20who`20prefer`20the`20direct`20approach,`20you`20can`20simply`20t
Vype`20file`20or
Xdirectory`20names`20in`20the`20`60`60Load`20file''`20text`20entry`20region.
V`20`20If`20you`20type`20a
Xdirectory`20name`20and`20hit`20$<$return$>$,`20%
X`7B\it`20xv`7D
Xwill`20'cd'`20to`20that`20directory`20and
Xdisplay`20its`20contents`20in`20the`20list`20window.`20`20If`20you`20type`20a
V`20file`20name`20and
Xhit`20$<$return$>$,`20%
X`7B\it`20xv`7D
Xwill`20attempt`20to`20load`20the`20file.`20`20You`20can`20enter
Xrelative`20paths`20(relative`20to`20the`20currently`20displayed`20directory),
Xabsolute`20paths,`20and`20even`20paths`20that`20begin`20with`20a`20'\`7E`7B
V`7D'.
X
XThe`20`60`60Load`20file''`20text`20entry`20region`20supports`20a`20number`20of
V`20emacs-like`20editing`20keys.
X\begin`7BIPlist`7D
X\IPitem`7B`7B`7D`7D
XCtrl-F`09moves`20the`20cursor`20forward`20one`20character
X\IPitem`7B`7B`7D`7D
XCtrl-B`09moves`20the`20cursor`20backward`20one`20character
X\IPitem`7B`7B`7D`7D
XCtrl-A`09moves`20the`20cursor`20to`20the`20beginning`20of`20the`20line
X\IPitem`7B`7B`7D`7D
XCtrl-E`09moves`20the`20cursor`20to`20the`20end`20of`20the`20line
X\IPitem`7B`7B`7D`7D
XCtrl-D`09deletes`20the`20character`20to`20the`20right`20of`20the`20cursor
X\IPitem`7B`7B`7D`7D
XCtrl-U`09clears`20the`20entire`20line
X\IPitem`7B`7B`7D`7D
XCtrl-K`09clears`20from`20the`20cursor`20position`20to`20the`20end`20of`20the
V`20line.
X\end`7BIPlist`7D
X
X\noindent
XIf`20the`20filename`20is`20so`20long`20that`20it`20cannot`20be`20completely
V`20displayed`20in
Xthe`20text`20entry`20region,`20a`20thick`20line`20will`20appear`20on`20the`20l
Veft`20or`20right
Xside`20(or`20both`20sides)`20of`20the`20region`20to`20show`20that`20`60`60ther
Ve's`20more`20over
Xthis`20way''.
X
XPressing`20the`20%
X\bf`20Rescan`20\rm%
Xbutton`20will`20rescan`20the`20current`20directory.
XWhile`20the`20contents`20of`20the`20current`20directory`20are`20read`20each
V`20time`20the
Xload`20window`20is`20opened,`20it`20is`20perfectly`20possible`20(given`20a`20m
Vultitasking
Xoperating`20system)`20that`20some`20other`20program`20may`20add,`20delete,`20o
Vr`20rename
Xfiles`20in`20the`20current`20directory.`20`20%
X`7B\it`20xv`7D
Xwould`20not`20know`20if`20this
Xhappened.`20`20The`20%
X\bf`20Rescan`20\rm%
Xbutton`20gives`20you`20an`20easy`20way`20of`20'kicking'
X%
X`7B\it`20xv`7D
Xinto`20looking`20again.
X
X\shead`7BSECTION`207:`20`20THE`20SAVE`20WINDOW`7D
X
XThe`20%
X\it`20xv`20save`20\rm%
Xwindow`20lets`20you`20write`20images`20back`20to`20disk,
Xpresumably`20after`20you've`20modified`20them.`20`20You`20can`20write`20images
V`20back`20many
Xdifferent`20formats,`20not`20just`20the`20original`20format.`20`20%
X\bf`20Warning!`20\rm%
X`20Images`20are
Xsaved`20as`20they`20are`20currently`20shown`20(at`20the`20current`20size,`20wi
Vth`20the
Xcurrent`20color`20modification,`20rotation,`20cropping,`20`7B\it`20etc.`7D`20a
Vpplied).`20`20The
Xonly`20exception`20to`20this`20rule`20is`20if`20you`20are`20on`20a`201--bit
V`20B/W`20display.
XThe`20fact`20that`20images`20have`20to`20be`20stippled`20in`20black`20and`20wh
Vite`20in`20order
Xto`20be`20displayed`20on`20such`20a`20screen`20doesn't`20count`20as`20'modific
Vation',`20and
Xthe`20file`20won't`20be`20saved`20'as`20displayed'.`20`20You`20can`20manipulat
Ve`20and`20save
Xfull-color`20images`20on`20such`20a`20display,`20even`20if`20you`20can't`20rea
Vlly`20see
Xthem.
X
XFor`20the`20most`20part,`20the`20%
X\it`20xv`20save`20\rm%
Xwindow`20operates`20exactly`20like`20the`20
X%
X\it`20xv`20load`20\rm%
Xwindow.`20`20(See`20`60`60Section`206:`20The`20Load`20Window''`20for`20details
V.)`20`20Only
Xthe`20differences`20are`20listed`20here.
X
XWhen`20the`20window`20is`20opened,`20it`20should`20have`20the`20filename`20of
V`20the
Xcurrently`20loaded`20file`20already`20entered`20into`20the`20text`20entry`20re
Vgion.`20`20If
Xyou`20change`20directories,`20or`20click`20on`20a`20file`20name`20in`20the`20l
Vist`20window,
Xthis`20name`20will`20be`20cleared`20and`20replaced`20with`20the`20new`20name.
X
XAt`20the`20bottom`20of`20the`20window`20are`20a`20list`20of`20possible`20forma
Vts`20in`20which
Xyou`20can`20save`20the`20file.`20`20If`20you`20click`20on`20one`20of`20these
V`20formats,`20and`20your
Xfilename`20has`20a`20recognized`20suffix`20(`7B\it`20i.e.`7D,`20'.gif',`20'.GI
VF',`20'.pbm',
X`7B\it`20etc.`7D),
+-+-+-+-+-+-+-+-  END  OF PART 6 +-+-+-+-+-+-+-+-
Technical Details
Message-ID: <8981992@MVB.SAIC.COM>
Path: arc1-ca.pugleaf.net!sparky!uunet!news.univie.ac.at!chx400!ira.uka.de!yale.edu!spool.mu.edu!uwm.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!elroy.jpl.nasa.gov!usc!news.service.uci.edu!unogate!mvb.saic.com!vmsnet-sources

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!news.univie.ac.at!chx400!ira.uka.de!yale.edu!spool.mu.edu!uwm.edu!zaphod.mps.ohio-state.edu!sdd.hp.com!elroy.jpl.nasa.gov!usc!news.service.uci.edu!unogate!mvb.saic.com!vmsnet-sources
Newsgroups: vmsnet.sources
From: dyson@iowasp.physics.uiowa.edu (Rick Dyson)
Subject: xv-2-21a changes to run on VMS, part 06/08
Date: Wed, 04 Nov 1992 21:12:48 GMT
Message-ID: <8981992@MVB.SAIC.COM>
Lines: 1265
Organization: Department of Physics and Astronomy, University of Iowa
Approved: Mark.Berryman@Mvb.Saic.Com