หน้า: 1 2 3 [4]
 
ผู้เขียน หัวข้อ: หัดเล่น GIMP  (อ่าน 81029 ครั้ง)
0 สมาชิก และ 1 ขาจร กำลังดูหัวข้อนี้
เฮ้ย เนียนขนาด โวย
บันทึกการเข้า

ทำมาหากินด้วยการเปิดร้านสกรีนเสื้อยืด จ้ะ
โคะ ทำได้ขนาดนั้นเลย โห
บันทึกการเข้า

ต๊กต๋าเปิ้นเป๋นดีไค่หัว ต๊กต๋าตัวเป๋นดีไค่ไห้
อนุบาลงาน Script-Fu
ตอนที่ ๑ - หัดภาษา Scheme

สำหรับคนที่ใช้ GIMP ในการทำอะไรบ่อยๆ แล้วหล่ะก็
คงอยากที่จะมีตัวช่วยทำให้เสร็จเร็วขึ้นสิครับ
น่าเสียดายที่ GIMP นั้นไม่มี Actions เพื่อให้เราสามารถ Record ได้
แต่ว่ามีอย่างอื่นที่สามารถนำมาใช้แทนได้ครับ
นั้นคือ Script-Fu ครับผม โดยเราใช้ภาษา Scheme ในการเขียนครับ

โดยสำหรับคนกำลังหัด ให้ไปที่เมนู Xtns -> Script-Fu -> Script-Fu Console



การใช้งานก็คือ ...... ใส่โค้ดลงไปครับ
แล้วผลลัพธ์ที่ออกมาจากโค้ดก็จะแสดงให้เห็นครับ

ภาษา Script-Fu ไม่เหมือนภาษาโปรแกรมทั่วๆ ไป

1. ชื่อฟังก์ชั่นนั้นอยู่ข้างใน!

        โดยปกติเวลาเราเขียนโค้ดต่างๆ อย่างเช่นภาษา C, PHP
หรือแม้แต่ภาษา CSS เรามักเอาชื่อฟังก์ชั่นไว้ข้างนอกวงเล็บครับ

  • functionname()
  • functionname(arg1, arg2, arg3)

        ภาษา Scheme นั้น ชื่อฟังก์ชั่นอยู่ข้างในวงเล็บนะครับ
ยกตัวอย่างเช่น:

  • (functionname)
  • (functionname arg1 arg2 arg3)

        เริ่มรู้สึกแปลกๆ รึยังครับ และสังเกตได้ด้วยว่า ไม่มี
เครื่องหมายคอมม่า ระหว่างฟังก์ชั่น กับค่าที่สงไป

2. เครื่องหมายบวก ลบ คุณ หารก็เป็นชื่อฟังก์ชั่นนะครับ

        ยกตัวอย่างเช่น ถ้าเราต้องการหาผลบวกของ 5 + 7
ปกติในภาษาโปรแกรมทั่วไป เครื่องหมายพวกนี้ถือเป็น Operator ครับ
แต่ว่าในภาษา Scheme เป็นฟังก์ชั่นครับ

  • (+ 5 7)

        ลองพิมพ์โค้ดข้างบนนี้ลงไปครับ ใน Console ครับ จะเห็นตัวเลข
12 ขึ้นมาแทนครับ แล้วถ้าเราต้องการทำ (5 + (8 * 5)) หล่ะครับจะทำยังไง...
ก็ทำอย่างงี้ไง!

  • (+ 5 (* 8 5))

        แล้วถ้าเราจะทำแบบว่า... เอ่อ.... 9 + 4 + (2 * 2 * 2) + 5 หล่ะครับ
ก็ไม่ยากครับ ทำแบบนี้

  • (+ 9 4 (* 2 2 2) 5)  เหวอ

        สำหรับโพสต์นี้ขอทิ้งคำถาม ง่ายๆ ก่อนแล้วกันครับ
อย่างน้อยก็ได้รู้ว่ายังมีคนเข้าใจคำที่ผมพูดอยู่ครับ ฮี่...

        งั้น คำถามให้ลองคิด ก็คือ... มีสี่เหลี่ยม กว้าง 13 ยาว 14 จะใช้โค้ดอะไรในการคำนวน
พื้นที่ และัก็ เส้นรอบรูปครับ ลองคิดดูครับ
บันทึกการเข้า

dt.in.thหัดเล่น GIMP<body style="filter:gray">
บันทึกการเข้า



สำหรับขา Scheme

http://www.codenone.com/node/592

แนะนำ fivedots ลิงก์นะครับ  เกย์ออก
บันทึกการเข้า

เราจะต้องการอะไรมากมายไปกว่า อะไรมากมาย
ตามเข้ามาบวกอย่างเดียวเลยครับ มึนตึ้บ
บันทึกการเข้า

ทำมาหากินด้วยการเปิดร้านสกรีนเสื้อยืด จ้ะ
อนุบาลงาน Script-Fu
ตอนที่ ๒ - หัดภาษา Scheme ต่อ

จากข้อข้างบน คำตอบก็คือ

  • (* 13 14)  เหวอ
  • (+ (* 13 2) (* 14 2))  เหวอ

การประกาศตัวแปร

โค้ด:
(let*
    (
        (ชื่อตัวแปร๑ ค่าเริ่มต้น)
        (ชื่อตัวแปร๒ ค่าเริ่มต้น)
    )
    (โค้ดการทำงานต่างๆ)
)
; (โค้ดข้างนอกจะไม่สามารถใช้งานตัวแปรใน let* ได้ครับ)

เช่น

โค้ด:
(let* ( (ตัวเลข 5) ) (+ ตัวเลข 1) )

ครับ และเราก็สามารถแก้ไขค่าของตัวแปรนั้นๆ ได้ด้วย โดยใช้คำสั่ง

โค้ด:
(set! ชื่อตัวแปร ค่า)

ตามตัวอย่างครับ:

โค้ด:
(let* ( (กว้าง 13) (ยาว 14) (พื้นที่) ) (set! พื้นที่ (* กว้าง ยาว)) พื้นที่ )

ซึ่งเมื่อเรียงแล้วก็ได้ดังนี้ครับ

โค้ด:
(let*
    (
        (กว้าง 13)
        (ยาว 14)
        (พื้นที่)
    )
   (set! พื้นที่ (* กว้าง ยาว))
   พื้นที่
)

หรือเ้ราจะทำแบบนี้ก็ได้

โค้ด:
(let*
    (
        (กว้าง 13)
        (ยาว 14)
        (พื้นที่ (* กว้าง ยาว))
    )
   พื้นที่
)

คำถามทิ้งท้าย -- โค้ดต่อไปนี้จะให้ค่าออกมาว่าอะไรครับ ลองเดาๆ กันดูครับ  อืมมมมห์

โค้ด:
(let* ((ตัวเลข 1)(ตัวเลขที่สอง 3)) (set! ตัวเลข (+ ตัวเลข ตัวเลขที่สอง)) (set! ตัวเลข (* ตัวเลข ตัวเลข)) ตัวเลข)
บันทึกการเข้า

dt.in.thหัดเล่น GIMP<body style="filter:gray">
ซู๊ดดดด หย้อดดดดดดดด  มากครับ... คุณ N  (แจ๋ว แจ๋ว)

ว่าแต่... ที่เค้า บวกๆ กันนี่... ไปบวกตรงไหนครับ ?  งง
บันทึกการเข้า

ด้วยหัวใจเท่านั้น
ที่เราจะเห็นได้อย่างถ่องแท้ว่า
สิ่งสำคัญที่ไม่อาจเห็นได้ด้วยตา
คืออะไร
:Antoine de Saint-Exupery
ซู๊ดดดด หย้อดดดดดดดด  มากครับ... คุณ N  (แจ๋ว แจ๋ว)

ว่าแต่... ที่เค้า บวกๆ กันนี่... ไปบวกตรงไหนครับ ?  งง

ยศยังไม่ถึงครับ เดี่ยวก็บวกได้ ใจเย็นๆ



เข้ามาชม แล้วออกไปแบบงงๆครับ  กร๊าก
บันทึกการเข้า

ชื่อ Earth ครับ เรียกเอิดก็ได้ | Earthchie's Blog
พึ่งเห็นจู๋นี้

น่าเล่นดีครับ  ไหว้+

ตอบข้อข้างบน 16 รึเปล่าครับ
บันทึกการเข้า

โปรแกรมเขาดีจริง
คน PR ก็สุดยอด  เจ๋ง +
บันทึกการเข้า

Foreground Selection Tool
                       How to use it.

เป็นเครื่องมือเอาไว้เลือกบางส่วนของรูปครับผมโดยไม่ต้องค่อยๆ ลาก
ให้เสียเวลาครับผม เอาไว้เลือกส่วนที่สีต่างๆ กันครับ

นี่คือรูปต้นฉบับครับ


เลือกเครื่องมือ Foreground Selection Tool ครับ
ลากครอบรูปภาพเลยครับ


ต่อไป ลากทับส่วนที่สำคัญๆ ของรูปครับ
ไม่ต้องลากมากก็ได้ครับ


ส่วนที่เราเลือกมาแล้ว หากไม่พอใจยินดีคืนเงินกด Esc ครับ


แต่หากพอใจ กด Enter ครับผม จะได้ Selection ครับ


สุดยอดไหมล่ะครับ ไม่ต้องลากทีละส่วนๆ ให้เสียเวลาครับ
ระบบนี้ใช้เทคนิก SIOX (http://www.siox.org/) ในการเลือกรูปครับ

ชอบเทคนิกนี้  โวย  กรี๊ดดดดด
บันทึกการเข้า

Las Noches Rubicundior
ถ้าสระไม่ลอย เดี๋ยวเราเจอกันแน่นอน

ปล. หัด Scribus ไปพร้อมกันในคราวเดียวดีไหมนะ
บันทึกการเข้า

เช็ดดดดดดเม่น!
หน้า: 1 2 3 [4]
 
 
Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2007, Simple Machines | Thai language by ThaiSMF Valid XHTML 1.0! Valid CSS!