Skip to content

Commit

Permalink
refactor: إعادة تسمية دالتي تحريك النقطة والمستقيم
Browse files Browse the repository at this point in the history
إعادة تسمية الدالتين التاليتين
- Line.point.move => Line.point.ride
- Line.point.updatePos => Line.point.move
  • Loading branch information
Assayyaad committed Aug 12, 2024
1 parent c900d6b commit 930d4d7
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 28 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,10 @@ const pointInLine = inside(line, 15);
import { Line } from './JavaScript-main/src/exports.js'

const line = Line.create.one({ end: 10 });
const newCurrent = move(line, 3, 2);
const newCurrent = ride(line, 3, 2);
// newCurrent = 5

const newCurrent = move(line, 3, 2, true);
const newCurrent = ride(line, 3, 2, true);
// newCurrent = 1
```

Expand Down
18 changes: 9 additions & 9 deletions src/line/func/point.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,22 +30,22 @@ export function inside({ min, max }, point) {
* @returns {Point} يعيد الموضع الجديد بعد التحرك
* @example <caption>تحريك النقطة للأمام على مستقيم موجب</caption>
* const line = Line.create.one({ end: 10 })
* const newCurrent = move(line, 3, 2)
* const newCurrent = ride(line, 3, 2)
* // newCurrent = 5
* @example <caption>تحريك النقطة للخلف على مستقيم موجب</caption>
* const line = Line.create.one({ end: 10 })
* const newCurrent = move(line, 3, 2, true)
* const newCurrent = ride(line, 3, 2, true)
* // newCurrent = 1
* @example <caption>تحريك النقطة للأمام على مستقيم سالب</caption>
* const line = Line.create.one({ end: -10 })
* const newCurrent = move(line, -3, 2)
* const newCurrent = ride(line, -3, 2)
* // newCurrent = -1
* @example <caption>تحريك النقطة للخلف على مستقيم سالب</caption>
* const line = Line.create.one({ end: -10 })
* const newCurrent = move(line, -3, 2, true)
* const newCurrent = ride(line, -3, 2, true)
* // newCurrent = -5
*/
export function move({ min, max, neg }, current, step, inverse = false) {
export function ride({ min, max, neg }, current, step, inverse = false) {
// إذا كانت الخطوة تساوي صفرًا، أعد الموضع الحالي دون تغييره
if (step === 0) return current

Expand All @@ -66,7 +66,7 @@ export function move({ min, max, neg }, current, step, inverse = false) {
* @param {PosAssignOptions} options - الخيارات لتعيين الموضع
* @returns {Line} - كائن الخط المحدّث
*/
export function updatePos(line, value, { type = 'to', target = 'both' }) {
export function move(line, value, { type = 'to', target = 'both' }) {
if (target === 'end') {
// تحديث موضع النهاية فقط للخط
line.end = type === 'to' ? value : line.end + value
Expand All @@ -92,10 +92,10 @@ export function updatePos(line, value, { type = 'to', target = 'both' }) {
* @param {Line} line - كائن الخط الذي سيتم عكسه
* @returns {Line} - كائن الخط المعكوس
*/
updatePos.flip = function (line) {
move.flip = function (line) {
const temp = line.start // تخزين موضع البداية مؤقتاً
updatePos(line, line.end, { type: 'to', target: 'start' }) // تعيين موضع البداية إلى موضع النهاية
updatePos(line, temp, { type: 'to', target: 'end' }) // تعيين موضع النهاية إلى موضع البداية الأصلي
move(line, line.end, { type: 'to', target: 'start' }) // تعيين موضع البداية إلى موضع النهاية
move(line, temp, { type: 'to', target: 'end' }) // تعيين موضع النهاية إلى موضع البداية الأصلي

return line // إرجاع كائن الخط المعكوس
}
34 changes: 17 additions & 17 deletions tests/line/func/point.js
Original file line number Diff line number Diff line change
Expand Up @@ -96,35 +96,35 @@ export default function () {
it('3.1: خطوة صفر', function () {
// [0 <- 5 -> 10] 0>> = [0 <- 5 -> 10]

const a = Line.point.move(line, current, 0)
const a = Line.point.ride(line, current, 0)
equal(a, 5)
})

it('3.2: الحركة للأمام داخل النطاق', function () {
// [0 <- 5 -> 10] 3>> = [0 <- 8 -> 10]

const a = Line.point.move(line, current, 3)
const a = Line.point.ride(line, current, 3)
equal(a, 8)
})

it('3.3: عدم تجاوز الحد الأقصى', function () {
// [0 <- 5 -> 10] 10>> = [0 <-> '10]

const a = Line.point.move(line, current, 10)
const a = Line.point.ride(line, current, 10)
equal(a, 10)
})

it('3.4: الحركة للخلف داخل النطاق', function () {
// [0 <- 5 -> 10] <<3 = [0 <- 2 -> 10]

const a = Line.point.move(line, current, 3, true)
const a = Line.point.ride(line, current, 3, true)
equal(a, 2)
})

it('3.5: عدم تجاوز الحد الأدنى', function () {
// [0 <- 5 -> 10] <<10 = [0' <-> 10]

const a = Line.point.move(line, current, 10, true)
const a = Line.point.ride(line, current, 10, true)
equal(a, 0)
})
})
Expand All @@ -138,35 +138,35 @@ export default function () {
it('4.1: خطوة صفر', function () {
// [-10 <- -5 -> 0] <<0 = [-10 <- -5 -> 0]

const a = Line.point.move(line, current, 0)
const a = Line.point.ride(line, current, 0)
equal(a, -5)
})

it('4.2: الحركة للأمام داخل النطاق', function () {
// [-10 <- -5 -> 0] <<3 = [-10 <- -8 -> 0]

const a = Line.point.move(line, current, 3)
const a = Line.point.ride(line, current, 3)
equal(a, -8)
})

it('4.3: عدم تجاوز الحد الأقصى', function () {
// [-10 <- -5 -> 0] <<10 = [-10' <-> 0]

const a = Line.point.move(line, current, 10)
const a = Line.point.ride(line, current, 10)
equal(a, -10)
})

it('4.4: الحركة للخلف داخل النطاق', function () {
// [-10 <- -5 -> 0] 3>> = [-10 <- -2 -> 0]

const a = Line.point.move(line, current, 3, true)
const a = Line.point.ride(line, current, 3, true)
equal(a, -2)
})

it('4.5: عدم تجاوز الحد الأدنى', function () {
// [-10 <- -5 -> 0] 10>> = [-10 <-> '0]

const a = Line.point.move(line, current, 10, true)
const a = Line.point.ride(line, current, 10, true)
equal(a, 0)
})
})
Expand All @@ -179,50 +179,50 @@ export default function () {
it('5.1: عكس مستقيم', function () {
// [0 -> 10] => [10 <- 0]

const a = Line.point.updatePos.flip(line)
const a = Line.point.move.flip(line)
equal(a.start, 10)
equal(a.end, 0)
})

it('5.2: تحديث موضع البداية فقط', function () {
// [0 -> 10] => [5 -> 10]

let a = Line.point.updatePos(line, 5, { type: 'by', target: 'start' })
let a = Line.point.move(line, 5, { type: 'by', target: 'start' })

equal(a.start, 5)
equal(a.end, 10)

// [5 -> 10] => [10 <- 20]

a = Line.point.updatePos(a, 20, { type: 'to', target: 'start' })
a = Line.point.move(a, 20, { type: 'to', target: 'start' })
equal(a.start, 20)
equal(a.end, 10)
})

it('5.3: تحديث موضع النهاية فقط', function () {
// [0 -> 10] => [0 -> 15]

let a = Line.point.updatePos(line, 5, { type: 'by', target: 'end' })
let a = Line.point.move(line, 5, { type: 'by', target: 'end' })
equal(a.start, 0)
equal(a.end, 15)

// [0 -> 15] => [0 -> 20]

a = Line.point.updatePos(a, 20, { type: 'to', target: 'end' })
a = Line.point.move(a, 20, { type: 'to', target: 'end' })
equal(a.start, 0)
equal(a.end, 20)
})

it('5.4: تحديث موضع البداية والنهاية معاً', function () {
// [0 -> 10] => [5 -> 15]

let a = Line.point.updatePos(line, 5, { type: 'by', target: 'both' })
let a = Line.point.move(line, 5, { type: 'by', target: 'both' })
equal(a.start, 5)
equal(a.end, 15)

// [5 -> 15] => [20 -> 20]

a = Line.point.updatePos(a, 20, { type: 'to', target: 'both' })
a = Line.point.move(a, 20, { type: 'to', target: 'both' })
equal(a.start, 20)
equal(a.end, 20)
})
Expand Down

0 comments on commit 930d4d7

Please sign in to comment.