摘要:表示磁場(chǎng)強(qiáng)度的值浮動(dòng)軸的。操縱桿操縱事件描述操縱桿事件的元組。在發(fā)生事件之前阻止執(zhí)行,然后返回一個(gè)表示發(fā)生的事件的。相關(guān)資料博客原文原文樹莓派的一個(gè)入門項(xiàng)目來自官方的簡(jiǎn)介
LED 模型 set_rotation 設(shè)置翻轉(zhuǎn)角度從官方給的 api 文檔中硬翻的...
這個(gè)函數(shù)可以設(shè)置 led 的旋轉(zhuǎn)角度
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
r | Integer | 0,90,180,270 | 0指的是樹莓派 HDMI 接口向下的方向 |
redraw | Boolean | TRUE,FALSE | 默認(rèn)為 TRUE |
示例:
#!/usr/bin/python import sys import time from sense_hat import SenseHat X = (255, 0, 0) O = (255, 255, 255) question_mark = [ O, O, O, X, X, O, O, O, O, O, X, O, O, X, O, O, O, O, O, O, O, X, O, O, O, O, O, O, X, O, O, O, O, O, O, X, O, O, O, O, O, O, O, X, O, O, O, O, O, O, O, O, O, O, O, O, O, O, O, X, O, O, O, O ] sense = SenseHat() sense.set_pixels(question_mark) sense.set_pixel(0, 0, 255, 0, 0) sense.set_pixel(0, 7, 0, 255, 0) sense.set_pixel(7, 0, 0, 0, 255) sense.set_pixel(7, 7, 255, 0, 255) def close_light(): black = [ [0,0,0] ] * 64 sense.set_pixels(black) try: while True: for r in [0, 90, 180, 270]: sense.set_rotation(r) time.sleep(0.3) except KeyboardInterrupt: close_light() print "Good bye"set_pixels 批量設(shè)置像素點(diǎn)
改變64顆 led 的顯示顏色
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
pixel_list | List | [[R, G, B] * 64] | 需要提供 list 長(zhǎng)度為64的二維數(shù)組, (r,g,b)為三原色的色值 |
示例參考上一個(gè)示例
get_pixels 獲取當(dāng)前像素點(diǎn)數(shù)組返回類型 | 描述 |
---|---|
List | 將當(dāng)前的 led 屏上顯示的圖像轉(zhuǎn)換成list |
示例:
#!/usr/bin/python from sense_hat import SenseHat X = (255, 0, 0) O = (0, 0, 0) question_mark = [ O, X, O, O, O, O, X, O, O, O, X, O, O, X, O, O, O, X, X, X, X, X, X, O, X, X, O, X, X, O, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, X, O, X, O, O, O, O, X, O, X, O, O, O, O, O, O, X ] sense = SenseHat() sense.set_pixels(question_mark) out_list = sense.get_pixels() print out_list
set_pixel 設(shè)置單點(diǎn)像素顏色提示:之所以有這個(gè)函數(shù)是因?yàn)閭魅?b>set_pixels的像素值有時(shí)會(huì)發(fā)生變化,sense HAT 是將每個(gè)像素指定為
8 位數(shù) (0-255) 但是如果傳入 led 的 frameBuffer 中的時(shí)候,顏色的位數(shù)會(huì)轉(zhuǎn)成 RGB565(5位紅色,6位綠色和5位藍(lán)色)
執(zhí)行轉(zhuǎn)換的時(shí)候可以看到二進(jìn)制轉(zhuǎn)換時(shí)發(fā)生的精度損失
get_pixels 就是顯示像素在緩沖區(qū)內(nèi)結(jié)束時(shí)的值
通過 x-y 坐標(biāo)系來定位像素位置,以 HDMI 接口面向的位置為下
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
x | Integer | 0-7 | 0為左 7為右 |
y | Integer | 0-7 | 0為上 7為下 |
當(dāng)只有三個(gè)參數(shù)的時(shí)候 | |||
pixel | Tuple / List | 0-255 | (r, g, b) 數(shù)值 |
當(dāng)有五個(gè)參數(shù)的時(shí)候 | |||
r | Integer | 0-255 | 紅 |
g | Integer | 0-255 | 綠 |
b | Integer | 0-255 | 藍(lán) |
示例:
from sense_hat import SenseHat sense = SenseHat() # examples using (x, y, r, g, b) sense.set_pixel(0, 0, 255, 0, 0) sense.set_pixel(0, 7, 0, 255, 0) sense.set_pixel(7, 0, 0, 0, 255) sense.set_pixel(7, 7, 255, 0, 255) red = (255, 0, 0) green = (0, 255, 0) blue = (0, 0, 255) # examples using (x, y, pixel) sense.set_pixel(0, 0, red) sense.set_pixel(0, 0, green) sense.set_pixel(0, 0, blue)get_pixel 獲取指定位置的顏色
同 get_pixels 不過是單體版的
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
x | Integer | 0-7 | 0為左 7為右 |
y | Integer | 0-7 | 0為上 7為下 |
返回類型 | 描述 |
---|---|
List | [R,G,B] 組成的數(shù)組 |
示例:
from sense_hat import SenseHat sense = SenseHat() top_left_pixel = sense.get_pixel(0, 0)load_image 加載圖像到矩陣中
加載一個(gè)圖像文件,將其轉(zhuǎn)換為RGB格式,并在LED矩陣上顯示。圖像的大小必須是8×8像素。
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
file_path | String | ... | 有效的圖片路徑 |
redraw | Boolean | TRUE/FALSE | 是否重繪已加載的圖像文件在LED矩陣上。默認(rèn)值為True |
示例:
from sense_hat import SenseHat sense = SenseHat() sense.load_image("space_invader.png")
返回類型 | 描述 |
---|---|
List | [[R,G,B] * 64] 組成的數(shù)組 |
from sense_hat import SenseHat sense = SenseHat() invader_pixels = sense.load_image("space_invader.png", redraw=False)clear 讓 led 屏變成純色,默認(rèn)是關(guān)閉
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
當(dāng)只有一個(gè)參數(shù)的時(shí)候 | |||
pixel | Tuple / List | 0-255 | (r, g, b) 數(shù)值,默認(rèn)為[0,0,0] |
當(dāng)有三個(gè)參數(shù)的時(shí)候 | |||
r | Integer | 0-255 | 紅 |
g | Integer | 0-255 | 綠 |
b | Integer | 0-255 | 藍(lán) |
示例:
from sense_hat import SenseHat from time import sleep sense = SenseHat() red = (255, 0, 0) sense.clear() # no arguments defaults to off sleep(1) sense.clear(red) # passing in an RGB tuple sleep(1) sense.clear(255, 255, 255) # passing in r, g and b values of a colourshow_message 屏幕顯示單個(gè)文字
就是街頭廣告燈的那種 led 滾屏啦!
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
text_string | String | ... | 將要滾屏的字母 |
scroll_speed | Float | 任意浮點(diǎn)數(shù) | 滾屏速度,默認(rèn) 0.1 |
text_colour | List | [R,G,B]] | 文字顏色,默認(rèn)[255,255,255] |
back_colour | List | [R,G,B]] | 背景顏色,默認(rèn)[0,0,0] |
示例:
from sense_hat import SenseHat sense = SenseHat() sense.show_message("One small step for Pi!", text_colour=[255, 0, 0])show_letter 單屏顯示字母
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
s | String | ... | 將要顯示的字母 |
text_colour | List | [R,G,B]] | 文字顏色,默認(rèn)[255,255,255] |
back_colour | List | [R,G,B]] | 背景顏色,默認(rèn)[0,0,0] |
示例:
#!/usr/bin/python import time from sense_hat import SenseHat sense = SenseHat() letters = "ABCDEFGHIJKLMNOPQRSTUVWSYZ" for i in letters: sense.show_letter(str(i)) time.sleep(1)low_light 調(diào)低亮度
如果覺得亮度有點(diǎn)刺眼的話可以開低亮度模式
import time from sense_hat import SenseHat sense = SenseHat() sense.clear(255, 255, 255) sense.low_light = True time.sleep(2) sense.low_light = False
#!/usr/bin/python import time from sense_hat import SenseHat sense = SenseHat() sense.clear(255, 127, 0) sense.set_pixels(question_mark) print(sense.gamma) time.sleep(2) old = sense.gamma sense.gamma = old[::-1] print(sense.gamma) time.sleep(2) sense.low_light = True print(sense.gamma) time.sleep(2) sense.low_light = Falsegamma
For advanced users. Most users will just need the low_light Boolean property above. The Sense HAT python API uses 8 bit (0 to 255) colours for R, G, B. When these are written to the Linux frame buffer they"re bit shifted into RGB 5 6 5. The driver then converts them to RGB 5 5 5 before it passes them over to the ATTiny88 AVR for writing to the LEDs.
The gamma property allows you to specify a gamma lookup table for the final 5 bits of colour used. The lookup table is a list of 32 numbers that must be between 0 and 31. The value of the incoming 5 bit colour is used to index the lookup table and the value found at that position is then written to the LEDs.
對(duì)于高級(jí)用戶。大多數(shù)用戶只需要上面的low_light布爾屬性。這個(gè)感覺帽python API使用8位(0到255)的顏色為R,G,b。當(dāng)這些被寫入Linux框架緩沖區(qū)時(shí),它們被位轉(zhuǎn)換為RGB 5 6 5。然后,驅(qū)動(dòng)程序?qū)⑺鼈冝D(zhuǎn)換為RGB 5 5 5,然后將其傳遞給ATTiny88 AVR以寫入led。
gamma屬性允許您為使用的最后5位顏色指定一個(gè)伽馬查找表。查找表是32個(gè)數(shù)字的列表,它們必須在0到31之間。傳入的5位顏色的值用于索引查找表,然后將該位置上發(fā)現(xiàn)的值寫入led。
---來自有道詞典,因?yàn)闀簳r(shí)不知道用在哪里
類型 | 可選參數(shù) | 描述 |
---|---|---|
List | 長(zhǎng)度為32的元組或列表,包含0到31之間的整數(shù) | 最后的5位顏色的查找表 |
示例:
import time from sense_hat import SenseHat sense = SenseHat() sense.clear(255, 127, 0) print(sense.gamma) time.sleep(2) sense.gamma = sense.gamma[::-1] print(sense.gamma) time.sleep(2) sense.low_light = True print(sense.gamma) time.sleep(2) sense.low_light = Falsegamma_reset
一個(gè)函數(shù)將gamma查找表重置為默認(rèn)值,理想情況下,如果您已經(jīng)對(duì)它進(jìn)行了處理,并希望將它恢復(fù)到默認(rèn)狀態(tài)。
示例:
import time from sense_hat import SenseHat sense = SenseHat() sense.clear(255, 127, 0) time.sleep(2) sense.gamma = [0] * 32 # Will turn the LED matrix off time.sleep(2) sense.gamma_reset()環(huán)境感應(yīng)器 get_humidity 濕度
返回類型 | 描述 |
---|---|
Float | 濕度的百分?jǐn)?shù) |
示例:
#!/usr/bin/python from sense_hat import SenseHat sense = SenseHat() humidity = sense.get_humidity() print("Humidity: %s %%rH" % humidity) #Humidity: 13.8048038483 %rH # 同樣效果 print(sense.humidity) #14.9011135101get_temperature 溫度
返回值也是浮點(diǎn)數(shù)
示例:
#!/usr/bin/python from sense_hat import SenseHat sense = SenseHat() temp = sense.get_temperature() print("Temperature: %s C" % temp) # Temperature: 33.0 C # alternatives print(sense.temp) # 33.0 print(sense.temperature) # 33.0get_temperature_from_humidity 溫度
從濕度傳感器獲取當(dāng)前溫度(攝氏度)。
示例:
from sense_hat import SenseHat sense = SenseHat() temp = sense.get_temperature_from_humidity() print("Temperature: %s C" % temp)get_temperature_from_pressure 溫度
從壓力傳感器獲取溫度
from sense_hat import SenseHat sense = SenseHat() temp = sense.get_temperature_from_pressure() print("Temperature: %s C" % temp)get_pressure 壓力
獲取壓力參數(shù)
ps: 1Bar=0.1MPa=1000mba=1000hpa=100*7.5mmhg=75mmhg=1個(gè)大氣壓
返回類型 | 描述 |
---|---|
Float | 單位為Millibars |
示例:
from sense_hat import SenseHat sense = SenseHat() pressure = sense.get_pressure() print("Pressure: %s Millibars" % pressure) #Pressure: 1024.56738281 Millibars # 同理 print(sense.pressure) # 1024.56738281IMU Sensor 慣性測(cè)量單元
IMU(inertial measurement unit)傳感器是三個(gè)傳感器的組合,每個(gè)傳感器分別有x、y和z軸。由于這個(gè)原因,它被認(rèn)為是一個(gè)9自由度的傳感器。
陀螺儀(Gyroscope)
加速度計(jì)(Accelerometer)
指南針(Magnetometer)
這個(gè)API允許你在任何組合中使用這些傳感器來測(cè)量方向或多帶帶的傳感器。
set_imu_config支持或禁用陀螺儀、加速度計(jì)和/或磁強(qiáng)計(jì)
參數(shù) | 類型 | 可選參數(shù) | 描述 |
---|---|---|---|
compass_enabled | Boolean | TRUE,FALSE | 是否啟用指南針 |
gyro_enabled | Boolean | TRUE,FALSE | 是否啟用陀螺儀 |
accel_enabled | Boolean | TRUE,FALSE | 是否啟用加速度計(jì) |
示例:
from sense_hat import SenseHat sense = SenseHat() sense.set_imu_config(False, True, False) # 只開啟陀螺儀get_orientation_radians
獲取當(dāng)前方向弧度,依據(jù)飛行器軸參數(shù)的 pitch, roll 和 yaw.
理解傳說中的roll、yaw、pitch
歐拉角
返回類型 | 描述 |
---|---|
Dictionary | 由俯仰角pitch,偏航角yaw,翻滾角roll組成的字典key 值,value 為軸弧度 |
示例:
from sense_hat import SenseHat sense = SenseHat() orientation_rad = sense.get_orientation_radians() print("p: {pitch}, r: {roll}, y: {yaw}".format(**orientation_rad)) # p: 0.0906969159842, r: -0.218863099813, y: 2.87161874771 # alternatives print(sense.orientation_radians) # {"yaw": 2.933598041534424, "roll": -0.20759552717208862, "pitch": 0.09733205288648605}get_orientation_degrees
以俯仰、翻滾和偏航的飛機(jī)主軸得到當(dāng)前的方向。
返回類型 | 描述 |
---|---|
Dictionary | 由俯仰角pitch,偏航角yaw,翻滾角roll組成的字典key 值,value 為軸角度 |
示例:
from sense_hat import SenseHat sense = SenseHat() orientation = sense.get_orientation_degrees() print("p: {pitch}, r: {roll}, y: {yaw}".format(**orientation)) # p: 359.368855623, r: 359.958133745, y: 24.4292643968get_orientation
作用同get_orientation_degrees
from sense_hat import SenseHat sense = SenseHat() orientation = sense.get_orientation() print(sense.orientation) # {"yaw": 20.334569404489745, "roll": 0.02406978340326997, "pitch": 359.2895215347403}get_compass
調(diào)用羅盤時(shí)會(huì)預(yù)先調(diào)用set_imu_config禁止掉重力計(jì)和加速度計(jì)的功能
from sense_hat import SenseHat sense = SenseHat() north = sense.get_compass() print("North: %s" % north) # North: 351.031626941 # alternatives print(sense.compass) # 351.031626941get_compass_raw
獲取原始x、y和z軸的磁強(qiáng)計(jì)數(shù)據(jù)。
返回類型 | 描述 |
---|---|
Dictionary | 字典對(duì)象索引的字符串x,y和z。表示磁場(chǎng)強(qiáng)度的值浮動(dòng)軸的microteslas(μT)。 |
from sense_hat import SenseHat sense = SenseHat() raw = sense.get_compass_raw() print("x: {x}, y: {y}, z: {z}".format(**raw)) # x: 3.14855718613, y: 0.269534498453, z: -0.743863344193 # alternatives print(sense.compass_raw) # {"y": 0.4851621091365814, "x": 5.667402744293213, "z": -1.338953971862793}get_gyroscope
調(diào)用set_imu_config來禁用磁強(qiáng)計(jì)和加速計(jì),然后只從陀螺儀獲取當(dāng)前方向。
返回類型 | 描述 |
---|---|
Dictionary | 由俯仰角pitch,偏航角yaw,翻滾角roll組成的字典key 值,value 為軸角度 |
from sense_hat import SenseHat sense = SenseHat() gyro_only = sense.get_gyroscope() print("p: {pitch}, r: {roll}, y: {yaw}".format(**gyro_only)) # alternatives print(sense.gyro) # {"yaw": 0.0604013305118731, "roll": 359.9494321175156, "pitch": 359.9567423509234} print(sense.gyroscope) # {"yaw": 0.0604013305118731, "roll": 359.9494321175156, "pitch": 359.9567423509234}get_gyroscope_raw
獲取原始x、y和z軸的陀螺儀數(shù)據(jù)。
返回類型 | 描述 |
---|---|
Dictionary | 一個(gè)由字符串x、y和z索引的字典對(duì)象。這些值是按每秒弧度表示軸的旋轉(zhuǎn)強(qiáng)度的浮點(diǎn)數(shù)。 |
from sense_hat import SenseHat sense = SenseHat() raw = sense.get_gyroscope_raw() print("x: {x}, y: {y}, z: {z}".format(**raw)) # alternatives print(sense.gyro_raw) print(sense.gyroscope_raw) # x: 1.03765261173, y: 2.46352291107, z: 0.185390725732 # {"y": 1.5728815793991089, "x": 0.34309887886047363, "z": 0.2984008193016052} # {"y": 0.8343454599380493, "x": 0.163504496216774, "z": 0.4767734408378601}get_accelerometer
調(diào)用set_imu_config來禁用磁力儀和陀螺儀,然后從加速度計(jì)得到當(dāng)前的方向。
返回類型 | 描述 |
---|---|
Dictionary | 由俯仰角pitch,偏航角yaw,翻滾角roll組成的字典key 值,value 為軸角度 |
from sense_hat import SenseHat sense = SenseHat() accel_only = sense.get_accelerometer() print("p: {pitch}, r: {roll}, y: {yaw}".format(**accel_only)) # alternatives print(sense.accel) print(sense.accelerometer) # p: 3.76471788135, r: 10.0814548376, y: 0.0 # {"yaw": 4.5454772552392335e-07, "roll": 10.082596332952239, "pitch": 3.7639588765826475} # {"yaw": 4.5454772552392335e-07, "roll": 10.082596332952239, "pitch": 3.7639588765826475}get_accelerometer_raw
獲取原始x、y和z軸加速度計(jì)數(shù)據(jù)。
返回類型 | 描述 |
---|---|
Dictionary | 一個(gè)由字符串x、y和z索引的字典對(duì)象。這些值代表了在Gs中軸的加速度強(qiáng)度。 |
from sense_hat import SenseHat sense = SenseHat() raw = sense.get_accelerometer_raw() print("x: {x}, y: {y}, z: {z}".format(**raw)) # alternatives print(sense.accel_raw) print(sense.accelerometer_raw) # x: -0.0634367614985, y: 0.172625526786, z: 0.974787354469 # {"y": 0.1738394945859909, "x": -0.06516461074352264, "z": 0.9757621884346008} # {"y": 0.17286831140518188, "x": -0.06565827876329422, "z": 0.9735689163208008}Joystick 操縱桿 操縱事件
描述操縱桿事件的元組。包含三個(gè)命名參數(shù):
時(shí)間戳—事件發(fā)生的時(shí)間,作為秒數(shù)(與內(nèi)置時(shí)間函數(shù)相同的格式)
方向-操縱桿移動(dòng)的方向,作為一個(gè)字符串(“向上”,“向下”,“左”,“右”,“中間”)
動(dòng)作—發(fā)生的動(dòng)作,作為一個(gè)字符串(“按壓”,“釋放”,“持有”)
這個(gè)tuple類型被一些joystick方法使用,要么作為返回類型,要么是參數(shù)的類型。
wait_for_event在發(fā)生joystick事件之前阻止執(zhí)行,然后返回一個(gè)表示發(fā)生的事件的InputEvent。
from sense_hat import SenseHat from time import sleep sense = SenseHat() event = sense.stick.wait_for_event() print("The joystick was {} {}".format(event.action, event.direction)) sleep(0.1) event = sense.stick.wait_for_event() print("The joystick was {} {}".format(event.action, event.direction))
在上面的例子中,如果你將操縱桿簡(jiǎn)單地推到一個(gè)單一的方向,你就會(huì)看到兩個(gè)事件輸出:一個(gè)被壓的動(dòng)作和一個(gè)釋放的動(dòng)作。可選的emptybuffer可以用于在等待新事件之前刷新任何未決事件。試試下面的腳本,看看有什么不同:
from sense_hat import SenseHat from time import sleep sense = SenseHat() event = sense.stick.wait_for_event() print("The joystick was {} {}".format(event.action, event.direction)) sleep(0.1) event = sense.stick.wait_for_event(emptybuffer=True) print("The joystick was {} {}".format(event.action, event.direction))get_events
返回自最后一次調(diào)用get_events或wait_for_event之后發(fā)生的所有事件的InputEvent tuple的列表。
from sense_hat import SenseHat sense = SenseHat() while True: for event in sense.stick.get_events(): print("The joystick was {} {}".format(event.action, event.direction))direction_up, direction_left, direction_right, direction_down, direction_middle, direction_any
這些屬性可以被分配一個(gè)函數(shù),當(dāng)操縱桿按在相關(guān)的方向(或者在direction_any的任何方向上)時(shí),它就會(huì)被調(diào)用。分配的函數(shù)要么不接受參數(shù),要么必須接受一個(gè)參數(shù),該參數(shù)將傳遞給相關(guān)的InputEvent。
from sense_hat import SenseHat, ACTION_PRESSED, ACTION_HELD, ACTION_RELEASED from signal import pause x = 3 y = 3 sense = SenseHat() def clamp(value, min_value=0, max_value=7): return min(max_value, max(min_value, value)) def pushed_up(event): global y if event.action != ACTION_RELEASED: y = clamp(y - 1) def pushed_down(event): global y if event.action != ACTION_RELEASED: y = clamp(y + 1) def pushed_left(event): global x if event.action != ACTION_RELEASED: x = clamp(x - 1) def pushed_right(event): global x if event.action != ACTION_RELEASED: x = clamp(x + 1) def refresh(): sense.clear() sense.set_pixel(x, y, 255, 255, 255) sense.stick.direction_up = pushed_up sense.stick.direction_down = pushed_down sense.stick.direction_left = pushed_left sense.stick.direction_right = pushed_right sense.stick.direction_any = refresh refresh() pause()相關(guān)資料
博客原文
api 原文
樹莓派+senseHAT 的一個(gè)入門項(xiàng)目
來自官方的 astro-pi 簡(jiǎn)介
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/44509.html
摘要:本文將以一個(gè)硬件小白的程序員視角詳細(xì)講述如何用三極管擴(kuò)展普通的樹莓派散熱風(fēng)扇從而實(shí)現(xiàn)溫控功能。 為了防止樹莓派長(zhǎng)時(shí)間開機(jī)運(yùn)轉(zhuǎn)溫度過高導(dǎo)致觸發(fā)過熱關(guān)機(jī),很多人都給裝了散熱風(fēng)扇,但某寶買的風(fēng)扇插上之后是隨著開機(jī)一直運(yùn)轉(zhuǎn)的,不能隨溫度變化而自動(dòng)開閉,很多時(shí)候做無用功浪費(fèi)電且產(chǎn)生噪音。本文將以一個(gè)硬件小白的程序員視角詳細(xì)講述如何用三極管擴(kuò)展普通的樹莓派散熱風(fēng)扇從而實(shí)現(xiàn)溫控功能。 在制作自己的溫...
閱讀 1152·2021-11-23 10:04
閱讀 2412·2021-11-22 15:29
閱讀 2806·2021-11-19 09:40
閱讀 729·2021-09-22 15:26
閱讀 2129·2019-08-29 16:27
閱讀 2498·2019-08-29 16:10
閱讀 1932·2019-08-29 15:43
閱讀 3285·2019-08-29 12:43