[net.micro.mac] MacPaint Bug

skipt@inuxm.UUCP (M Tourville) (07/30/85)

The following describes what I believe to be a bug in Macpaint
regarding the paintcan.

Open Macpaint, and using Edit Patterns, create the following
patterns:

			xxxx xxx
			x
			x
			x
					Pattern 1
			x
			x
			x
		
		
			xxxx xxx
			x
			x
			x
			    x		Pattern 2
			x
			x
			x
		
		
		
			xxxx xxx
			x
			x   x
			x   x
			  xxxxx		Pattern 3
			x   x
			x   x
			x
		
		
		
			xxxx xxx
			x
			x xxxxx
			  xxxxx		Pattern 4
			x xxxxx
			x xxxxx
			x


(Before proceeding, it might be helpful to try a couple of filled-in
shapes to see how these patterns perform.)  Pattern 1 essentially
creates "graph paper", and the other patterns fill in the blocks
of the graph paper.  Notice that the way the patterns are constructed
allows white space to be connected throughout the paper, and one would
therefore think that an area of the "graph paper" filled in with
pattern 4 could be erased (leaving just the graph paper behind) by
filling it with the paint can using pattern 1.  Not so--in fact the
performance is unusual and seems to depend on the relative "density"
of the pattern filling in each block of graph paper.  Experiment
with different patterns and different orders of filling areas to
get a feel for some of the strange things that happen.

The Macpaint manual is very careful to show that paint can leak
through if all the lines are not joined (pg 17).  What gives?

warack@aero.ARPA (Chris Warack ) (08/02/85)

In article <267@inuxm.UUCP> skipt@inuxm.UUCP (M Tourville) writes:
[Deleted 4 pattern designs]
>(Before proceeding, it might be helpful to try a couple of filled-in
>shapes to see how these patterns perform.)  Pattern 1 essentially
>creates "graph paper", and the other patterns fill in the blocks
>of the graph paper.  Notice that the way the patterns are constructed
>allows white space to be connected throughout the paper, and one would
>therefore think that an area of the "graph paper" filled in with
>pattern 4 could be erased (leaving just the graph paper behind) by
>filling it with the paint can using pattern 1.  Not so--in fact the
>performance is unusual and seems to depend on the relative "density"
>of the pattern filling in each block of graph paper.  Experiment
>with different patterns and different orders of filling areas to
>get a feel for some of the strange things that happen.

>The Macpaint manual is very careful to show that paint can leak
>through if all the lines are not joined (pg 17).  What gives?

The paintcan fills a 'bounded' region.  In your example, the region is a
very complex set of holes and boundaries and this causes the wierdness you
experienced.  Since your patterns were all related, the results were not
that different.  A similar but easier-to-see-what-is-happening example:
make a bunch of small solid squares, draw random lines, use paintcan on a
WHITE area.  Everything will fill except the squares, lines, [and other
closed regions].  Now click the paint can on a solid square [with a
different pattern than black].  It changes, because it is also a bounded
region.  Now carefully click the tip of the paint spilling out of the paint
can on a line -- it and anything connected to it will change.  This is the
way the paint can is meant to work.

To do what you INTENDED.  Select the region you want to change with the
select square [or lasso]; select the pattern; choose FILL from the EDIT[?]
menu.  Voila.

BTW, using the paint can to make lightened lines is very useful.  Draw a
line; chose a grey pattern; click the paintcan on the line.  Caveat: make
sure nothing else is touching or it will change too.  It's also easy to
miss.  However, thank goodness for UNDO.

Nifty idea with the graph paper:

-- 
 _______
|/-----\|    Chris Warack			(213) 648-6617
||hello||
||     ||    warack@aerospace.ARPA
|-------|    warack@aero.UUCP
|@  ___ |       seismo!harvard!talcott!panda!genrad!decvax!ittatc!dcdwest!
|_______|         sdcsvax!sdcrdcf!trwrb!trwrba!aero!warack
  || ||  \   Aerospace Corporation, M1-117, El Segundo, CA  90245
 ^^^ ^^^  `---------(|=