Sao(星曜)
Lời mở đầu
Sao(星曜) là thành phần quan trọng của Tử Vi Đẩu Số(紫微斗數); các tổ hợp khác nhau được dùng để mô tả những nét tính cách khác nhau. Có thể tìm hiểu nền tảng ở hệ thống sao(星曜系統). Chương này tập trung vào cách dùng sao trong lập trình.
Mẹo
iztro xếp chính tinh(主星), phụ tinh(輔星) và tạp diệu(雜曜) vào hệ thống sao, còn 48 thần sát(48神煞) được xử lý riêng. Nếu chưa biết 48 thần sát(48神煞), hãy xem 48 thần sát(48神煞).
Lớp và phương thức phân tích
Giống FunctionalAstrolabe và FunctionalPalace, hãy dùng thể hiện FunctionalStar do đối tượng khác trả về thay vì tự tạo thủ công.
FunctionalStar ^1.2.0
implements
IFunctionalStar extends StarĐịnh nghĩa giao diện
tsinterface IFunctionalStar extends Star { toJSON: () => Star; palace: () => IFunctionalPalace | undefined; setPalace: (p: IFunctionalPalace) => void; setAstrolabe: (a: IFunctionalAstrolabe) => void; surroundedPalaces: () => IFunctionalSurpalaces | undefined; oppositePalace: () => IFunctionalPalace | undefined; withBrightness: (brightness: Brightness | Brightness[]) => boolean; withMutagen: (mutagen: Mutagen | Mutagen[]) => boolean; }Thuộc tính
Tham khảo Star
Phương thức
toJSON() ^2.6.0
Mục đích
Chuyển đối tượng sao có chức năng phân tích thành đối tượng JSON thông thường. Không chứa phương thức phân tích hay tham chiếu lúc chạy đến cung và lá số; tham chiếu vòng được bỏ qua an toàn.
Định nghĩa
tstype toJSON = () => Star;Tham số
Không có
Giá trị trả về
Ví dụ
tsconst data = astrolabe.star("紫微").toJSON();
❗️Chú ý
FunctionalStarcósetPalace()vàsetAstrolabe()để liên kết sao với cung và lá số. Không gọi thủ công các phương thức này khi sử dụng thông thường, vì có thể làm sai dữ liệu.palace()
Mục đích
Lấy cung chứa sao.
Định nghĩa
tstype palace = () => IFunctionalPalace | undefined;Tham số
noneGiá trị trả về
FunctionalPalace|undefinedVí dụ
Lấy cung chứa
Tử Vi(紫微).tsimport { astro } from "iztro"; const astrolabe = astro.astrolabeBySolarDate("2000-8-16", 2, "女", true, "zh-CN"); const palace = astrolabe.star("紫微").palace();
surroundedPalaces()
Mục đích
Lấy các cung thuộc tam phương tứ chính(三方四正) của sao hiện tại.
Định nghĩa
tstype surroundedPalaces = () => IFunctionalSurpalaces | undefined;Tham số
noneGiá trị trả về
FunctionalSurpalaces|undefinedVí dụ
Với
Tử Vi(紫微), lấy các cung thuộctam phương tứ chính(三方四正).tsimport { astro } from "iztro"; const astrolabe = astro.astrolabeBySolarDate("2000-8-16", 2, "女", true, "zh-CN"); const palaces = astrolabe.star("紫微").surroundedPalaces();
oppositePalace()
Mục đích
Lấy cung đối diện với cung chứa sao hiện tại.
Định nghĩa
tstype oppositePalace = () => IFunctionalPalace | undefined;Tham số
noneGiá trị trả về
FunctionalPalace|undefinedVí dụ
Với
Tử Vi(紫微), lấyđối cung(對宮) của cung chứa sao này.tsimport { astro } from "iztro"; const astrolabe = astro.astrolabeBySolarDate("2000-8-16", 2, "女", true, "zh-CN"); const palace = astrolabe.star("紫微").oppositePalace();
withBrightness()
Mục đích
Kiểm tra sao có độ sáng được chỉ định hay không. Nếu truyền nhiều giá trị, chỉ cần khớp một giá trị là trả về
true.Định nghĩa
tstype withBrightness = (brightness: Brightness | Brightness[]) => boolean;Tham số
Tham số Kiểu Bắt buộc? Giá trị mặc định Mô tả brightness Brightness|Brightness[]true- Độ sáng của sao cần kiểm tra Giá trị trả về
booleanVí dụ
Xác định xem
Tử Vi(紫微) đang ở trạng tháiMiếu(廟) hayVượng(旺)tsimport { astro } from "iztro"; const astrolabe = astro.astrolabeBySolarDate("2000-8-16", 2, "女", true, "zh-CN"); const result = astrolabe.star("紫微").withBrightness(["庙", "旺"]);
withMutagen()
Mục đích
Kiểm tra sao có tứ hóa(四化) được chỉ định hay không. Nếu truyền nhiều tứ hóa, chỉ cần khớp một loại là trả về
true.Định nghĩa
tstype withMutagen = (mutagen: Mutagen | Mutagen[]) => boolean;Tham số
Tham số Kiểu Bắt buộc? Giá trị mặc định Mô tả mutagen Mutagen|Mutagen[]true- Tứ hóa: Lộc(祿), Quyền(權), Khoa(科), Kỵ(忌) Giá trị trả về
booleanVí dụ
Xác định xem
Tử Vi(紫微) đang ở trạng tháiQuyền(化權) hayKhoa(化科)tsimport { astro } from "iztro"; const astrolabe = astro.astrolabeBySolarDate("2000-8-16", 2, "女", true, "zh-CN"); const result = astrolabe.star("紫微").withMutagen(["权", "科"]);