Lesson.figures: fixed diagrams per lesson (stored once, served with the lesson); gen_lesson_figures; 3 calculus-12 lessons

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-07 16:26:10 +03:30
parent 1d7eb829e2
commit ce629e32e4
9 changed files with 399 additions and 3 deletions

View File

@@ -20664,6 +20664,190 @@
"به طور مثال، نقطه (-4,0) ابتدا به (-5,0) منتقل می‌شود و سپس به (-5,-3) می‌رسد.",
"همین کار برای سایر نقاط انجام می‌شود و نمودار نهایی به دست می‌آید.",
"✅ جواب: نقاط جدید: (-5,-3), (-3,-2), (-1,-2), (2,-3)"
],
"figures": [
{
"where": "example",
"diagram": {
"kind": "plane",
"title": "نمودار تابع f",
"axes": true,
"points": {
"A": [
-4.0,
0.0
],
"B": [
-2.0,
1.0
],
"C": [
0.0,
1.0
],
"D": [
3.0,
0.0
]
},
"items": [
{
"type": "point",
"point": "A"
},
{
"type": "point",
"point": "B"
},
{
"type": "point",
"point": "C"
},
{
"type": "point",
"point": "D"
},
{
"type": "segment",
"from": "A",
"to": "B"
},
{
"type": "segment",
"from": "B",
"to": "C"
},
{
"type": "segment",
"from": "C",
"to": "D"
}
],
"grid": true
}
},
{
"where": "step",
"index": 0,
"diagram": {
"kind": "plane",
"title": "انتقال نمودار f به سمت چپ",
"axes": true,
"points": {
"A": [
-5.0,
0.0
],
"B": [
-3.0,
1.0
],
"C": [
-1.0,
1.0
],
"D": [
2.0,
0.0
]
},
"items": [
{
"type": "point",
"point": "A"
},
{
"type": "point",
"point": "B"
},
{
"type": "point",
"point": "C"
},
{
"type": "point",
"point": "D"
},
{
"type": "segment",
"from": "A",
"to": "B"
},
{
"type": "segment",
"from": "B",
"to": "C"
},
{
"type": "segment",
"from": "C",
"to": "D"
}
],
"grid": true
}
},
{
"where": "step",
"index": 1,
"diagram": {
"kind": "plane",
"title": "انتقال نمودار به سمت پایین",
"axes": true,
"points": {
"A": [
-5.0,
-3.0
],
"B": [
-3.0,
-2.0
],
"C": [
-1.0,
-2.0
],
"D": [
2.0,
-3.0
]
},
"items": [
{
"type": "point",
"point": "A"
},
{
"type": "point",
"point": "B"
},
{
"type": "point",
"point": "C"
},
{
"type": "point",
"point": "D"
},
{
"type": "segment",
"from": "A",
"to": "B"
},
{
"type": "segment",
"from": "B",
"to": "C"
},
{
"type": "segment",
"from": "C",
"to": "D"
}
],
"grid": true
}
}
]
},
{
@@ -20681,11 +20865,79 @@
},
{
"title": "انتقال عمودی نمودار تابع",
"introText": "برای انتقال عمودی نمودار تابع، اگر تابع اصلی y = f(x) باشد، تابع جدید را به صورت g(x) = f(x) + k تعریف می‌کنیم. این انتقال باعث می‌شود که هر نقطه (x, y) روی نمودار تابع اصلی به نقطه (x, y+k) روی نمودار تابع جدید منتقل شود. بنابراین نمودار تابع به اندازه k واحد به سمت بالا (اگر k مثبت باشد) یا به سمت پایین (اگر k منفی باشد) جابجا می‌شود."
"introText": "برای انتقال عمودی نمودار تابع، اگر تابع اصلی y = f(x) باشد، تابع جدید را به صورت g(x) = f(x) + k تعریف می‌کنیم. این انتقال باعث می‌شود که هر نقطه (x, y) روی نمودار تابع اصلی به نقطه (x, y+k) روی نمودار تابع جدید منتقل شود. بنابراین نمودار تابع به اندازه k واحد به سمت بالا (اگر k مثبت باشد) یا به سمت پایین (اگر k منفی باشد) جابجا می‌شود.",
"figures": [
{
"where": "intro",
"diagram": {
"kind": "plane",
"title": "انتقال عمودی نمودار تابع",
"axes": true,
"points": {},
"items": [
{
"type": "function",
"expr": "x^2",
"from": -2.0,
"to": 2.0,
"marks": [
"vertex"
],
"label": "y = f(x)"
},
{
"type": "function",
"expr": "x^2 + 2",
"from": -2.0,
"to": 2.0,
"marks": [
"vertex"
],
"label": "g(x) = f(x) + 2"
}
],
"grid": true
}
}
]
},
{
"title": "انتقال افقی نمودار تابع",
"introText": "برای انتقال افقی نمودار تابع، اگر تابع اصلی y = f(x) باشد، تابع جدید را به صورت g(x) = f(x + c) تعریف می‌کنیم. این انتقال باعث می‌شود که هر نقطه (x, y) روی نمودار تابع اصلی به نقطه (x - c, y) روی نمودار تابع جدید منتقل شود. بنابراین نمودار تابع به اندازه c واحد به سمت چپ (اگر c مثبت باشد) یا به سمت راست (اگر c منفی باشد) جابجا می‌شود."
"introText": "برای انتقال افقی نمودار تابع، اگر تابع اصلی y = f(x) باشد، تابع جدید را به صورت g(x) = f(x + c) تعریف می‌کنیم. این انتقال باعث می‌شود که هر نقطه (x, y) روی نمودار تابع اصلی به نقطه (x - c, y) روی نمودار تابع جدید منتقل شود. بنابراین نمودار تابع به اندازه c واحد به سمت چپ (اگر c مثبت باشد) یا به سمت راست (اگر c منفی باشد) جابجا می‌شود.",
"figures": [
{
"where": "intro",
"diagram": {
"kind": "plane",
"title": "انتقال افقی تابع",
"axes": true,
"points": {},
"items": [
{
"type": "function",
"expr": "x^2",
"from": -3.0,
"to": 3.0,
"marks": [
"vertex"
],
"label": "y = f(x)"
},
{
"type": "function",
"expr": "(x-2)^2",
"from": -3.0,
"to": 3.0,
"marks": [
"vertex"
],
"label": "y = g(x)"
}
],
"grid": true
}
}
]
},
{
"title": "انتقال نمودار تابع به سمت بالا یا پایین",