PCXReader.st
changeset 1745 4fa0fad2a463
parent 1737 a1ed08195ee7
child 1756 7c4f38c59b2a
--- a/PCXReader.st	Thu Apr 10 13:21:46 2003 +0200
+++ b/PCXReader.st	Thu Apr 10 16:26:11 2003 +0200
@@ -16,7 +16,7 @@
 	instanceVariableNames:'header buffer nBuffer bufferIndex sourceBytesPerRow'
 	classVariableNames:''
 	poolDictionaries:''
-	category:'Graphics-Images-Support'
+	category:'Graphics-Images-Readers'
 !
 
 !PCXReader class methodsFor:'documentation'!
@@ -117,27 +117,32 @@
 extractColorMap16
     "extract the 16-entry colormap from the header"
 
-    |rawMap srcIndex rMap gMap bMap|
+    |rawMap|
 
-    rawMap := ByteArray uninitializedNew:(16*3).
-    rawMap replaceFrom:1 to:(16*3) with:header startingAt:17.
-    rMap := ByteArray new:16.
-    gMap := ByteArray new:16.
-    bMap := ByteArray new:16.
-    srcIndex := 1.
-    1 to:16 do:[:i |
-        |r g b|
+    rawMap := header copyFrom:17 to:(17 + (16*3) - 1).
+    ^ Colormap rgbVector:rawMap 
 
-        r := rawMap at:srcIndex.
-        g := rawMap at:srcIndex+1.
-        b := rawMap at:srcIndex+2.
-
-        rMap at:i put:r.
-        gMap at:i put:g.
-        bMap at:i put:b.
-        srcIndex := srcIndex + 3.
-    ].
-    ^ Colormap redVector:rMap greenVector:gMap blueVector:bMap.
+"/    |rawMap srcIndex rMap gMap bMap|
+"/
+"/    rawMap := ByteArray uninitializedNew:(16*3).
+"/    rawMap replaceFrom:1 to:(16*3) with:header startingAt:17.
+"/    rMap := ByteArray new:16.
+"/    gMap := ByteArray new:16.
+"/    bMap := ByteArray new:16.
+"/    srcIndex := 1.
+"/    1 to:16 do:[:i |
+"/        |r g b|
+"/
+"/        r := rawMap at:srcIndex.
+"/        g := rawMap at:srcIndex+1.
+"/        b := rawMap at:srcIndex+2.
+"/
+"/        rMap at:i put:r.
+"/        gMap at:i put:g.
+"/        bMap at:i put:b.
+"/        srcIndex := srcIndex + 3.
+"/    ].
+"/    ^ Colormap redVector:rMap greenVector:gMap blueVector:bMap.
 !
 
 nextByteFromBufferOrStream
@@ -166,25 +171,28 @@
     ] ifFalse:[
         inStream nextBytes:(256*3) into:rawMap.
     ].
-    rMap := Array new:256.
-    gMap := Array new:256.
-    bMap := Array new:256.
-    srcIndex := 1.
 
-    1 to:256 do:[:i |
-        |r g b|
+    ^ Colormap rgbVector:rawMap 
 
-        r := rawMap at:srcIndex.
-        g := rawMap at:srcIndex+1.
-        b := rawMap at:srcIndex+2.
-
-        rMap at:i put:r.
-        gMap at:i put:g.
-        bMap at:i put:b.
-        srcIndex := srcIndex + 3.
-    ].
-
-    ^ Colormap redVector:rMap greenVector:gMap blueVector:bMap.
+"/    rMap := Array new:256.
+"/    gMap := Array new:256.
+"/    bMap := Array new:256.
+"/    srcIndex := 1.
+"/
+"/    1 to:256 do:[:i |
+"/        |r g b|
+"/
+"/        r := rawMap at:srcIndex.
+"/        g := rawMap at:srcIndex+1.
+"/        b := rawMap at:srcIndex+2.
+"/
+"/        rMap at:i put:r.
+"/        gMap at:i put:g.
+"/        bMap at:i put:b.
+"/        srcIndex := srcIndex + 3.
+"/    ].
+"/
+"/    ^ Colormap redVector:rMap greenVector:gMap blueVector:bMap.
 !
 
 readCompressedData
@@ -392,7 +400,7 @@
 !PCXReader class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libview2/PCXReader.st,v 1.27 2003-04-04 17:07:54 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libview2/PCXReader.st,v 1.28 2003-04-10 14:25:57 cg Exp $'
 ! !
 
 PCXReader initialize!