4
สร้างภาพซ้ำโดยใช้บรรทัด
เขียนโปรแกรมที่ถ่ายด้วยภาพ RGB สีจริงI , จำนวนเส้นสูงสุดในการวาดLและความยาวต่ำสุดmและความยาวMสูงสุดของแต่ละบรรทัด เอาท์พุทภาพOที่รูปลักษณ์มากที่สุดเท่าที่เป็นไปได้เช่นผมและวาดโดยใช้Lหรือเส้นตรงน้อยลงซึ่งทั้งหมดนี้มีความยาวระหว่างยุคลิดมและM แต่ละบรรทัดจะต้องเป็นหนึ่งสีทึบมีจุดปลายทั้งสองอยู่ในขอบเขตของOและวาดโดยใช้อัลกอริทึมเส้นของ Bresenham (ซึ่งห้องสมุดกราฟิกส่วนใหญ่จะทำเพื่อคุณแล้ว) แต่ละบรรทัดมีความหนาเพียง 1 พิกเซล ทุกบรรทัดแม้แต่ความยาว 0 ควรมีอย่างน้อยหนึ่งพิกเซล เส้นอาจถูกวาดทับกัน ก่อนที่จะวาดเส้นใด ๆ คุณอาจเริ่มต้นพื้นหลังของOเป็นสีทึบใด ๆ (ที่อาจขึ้นอยู่กับฉัน ) รายละเอียด Oควรจะมีขนาดเดียวกันกับผม Lจะเป็นจำนวนเต็มที่ไม่ใช่ค่าลบเสมอ มันอาจจะเป็นมากกว่าพื้นที่ของฉัน ม.และเอ็มจะไม่ติดลบตัวเลขทศนิยมกับM > =เมตร ระยะห่างระหว่างสองพิกเซลคือระยะ Euclidean ระหว่างจุดศูนย์กลาง หากระยะทางนี้น้อยกว่าmหรือมากกว่าMดังนั้นจะไม่อนุญาตให้มีบรรทัดระหว่างพิกเซลเหล่านั้น เส้นไม่ควรถูกลดรอยหยัก ความทึบและอัลฟาไม่ควรใช้ โปรแกรมของคุณไม่ควรใช้เวลามากกว่าหนึ่งชั่วโมงในการทำงานบนคอมพิวเตอร์ที่ทันสมัยในภาพที่มีขนาดน้อยกว่าหนึ่งล้านพิกเซลและLน้อยกว่า 10,000 ทดสอบภาพ แน่นอนว่าคุณควรแสดงภาพที่ถูกต้องหรือน่าสนใจที่สุดให้กับเรา (ซึ่งฉันคาดว่าจะเกิดขึ้นเมื่อLอยู่ระหว่าง 5% ถึง 25% ของจำนวนพิกเซลในIและmและMประมาณหนึ่งในสิบของขนาดทแยงมุม) นี่คือภาพทดสอบบางส่วน (คลิกเพื่อดูภาพต้นฉบับ) คุณสามารถโพสต์ของคุณเอง ภาพที่เรียบง่าย: นี่คือการประกวดความนิยม ผลงานที่ได้คะแนนโหวตสูงสุดชนะ …