Article View: vmsnet.sources
Article #123xv-2-21a changes to run on VMS, part 06/08
From: Rick Dyson
Date: Wed, 04 Nov 1992 21:12
Date: Wed, 04 Nov 1992 21:12
1265 lines
50059 bytes
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-sourcesShow 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