AppleWatch GPSブイで潮流チェック♪

GPSブイの説明動画を作って見ました。 本来なら海で使うことを想定していますが、アップルさん本社付近でのテストになります

課題

  • 海の中で目印となる、GPSブイが欲しい

ニーズ

  • GPSを活用して、位置情報を記録できる機能が欲しい
  • 釣っている最中は釣り具以外何も持ちたくない

背景

釣行計画はスマートフォン

  • 釣りスポットの履歴をGPSで簡単に確認できることで、以前に釣った場所を特定しやすくなる。
  • 釣りスポットの情報を見ながら、新しい釣りスポットを開拓する楽しみが増す。
  • 潮の流れや季節の変化など環境情報をより正確に把握し、釣果向上につなげることができる。

現場まで航行は

GPS釣りスポット記録アプリを利用し目的地に行ける

船にGPS付き魚群探知機で目的地付近に行く

実釣

目印としてのGPSブイやマーキング装置を設定し、潮や風でどれだけ流れたか知りたい

ほしい機能

  • GPSブイの投入
    • ブイID、緯度経度記録
    • ○ブイIは3個
    • Xブイは3個
  • GPSブイからの距離計測
    • ○ブイから50m離れたら振動でお知ら
    • Xブイから50m以内に入ったら振動でお知らせ
  • ブイ使用履歴を作成
    • 記録は5個

最初の一歩 マップ表示  

import MapKit
struct ContentView: View {
      var body: some View {
         Map()
      }
}

   

場所指定

  • 緯度経度と表示エリアを設定
import SwiftUI
import MapKit
struct ContentView: View {
  var body: some View {
    //三重県南伊勢町五ケ所を指定
    @State  var region = MKCoordinateRegion(
      center : CLLocationCoordinate2D (
        latitude: 34.349// 緯度
        longitude: 136.697 // 経度
      ),
      latitudinalMeters: 500.0, // 南北の表示エリア(単位:メートル)
      longitudinalMeters: 500.0 // 東西の表示エリア(単位:メートル)
    )
    
    Map(coordinateRegion: $region)
  }
}

現在位置表示

  • 緯度経度取得 LocationManagerクラス作成
    • ググって、情報をまとめました。みなさんありがとうございます
import WatchKit
import MapKit

class LocationManager: NSObject, ObservableObject, CLLocationManagerDelegate {
    // CLLocationManagerをインスタンス化
    let manager = CLLocationManager()
    
    // 更新のたびに変化するので@Publishedを付与して観測
    @Published  var region =  MKCoordinateRegion()
    
    override init() {
        super.init()     // スーパクラスイニシャライズ
        manager.delegate = self     //自身をデリゲートプロパティに
        manager.requestWhenInUseAuthorization()  // 位置情報を利用許可を要求
        manager.desiredAccuracy = kCLLocationAccuracyBest   // 最高精度の位置情報を要求
        manager.distanceFilter = 3.0     // 更新距離(m)
        manager.startUpdatingLocation()  //現在位置アップデート生成開始
    }
    
    // 領域の更新をするデリゲートメソッド
    func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
        
        // 配列の最後に最新のロケーションが格納される
        // map関数を使って全要素にアクセス map{ $0←要素に参照 }
        locations.last.map {
            let center = CLLocationCoordinate2D(
                latitude: $0.coordinate.latitude,
                longitude: $0.coordinate.longitude)
            
            // 地図を表示するための領域を再構築
            region = MKCoordinateRegion(
                center: center,
                latitudinalMeters: 100.0,
                longitudinalMeters: 100.0
            )
        }
    }
}
  • View改良
    • ググって、情報をまとめました。みなさんありがとうございます
import SwiftUI
import MapKit

struct ContentView: View {
    @ObservedObject  var manager = LocationManager()
    //ユーザートラッキングモードを追従モード変数 .follow ユーザーを追跡  .none ユーザーの追跡を停止
    @State  var trackingMode = MapUserTrackingMode.follow
    
 
 struct ContentView: View {
    @ObservedObject  var manager = LocationManager()
    @State  var trackingMode = MapUserTrackingMode.follow
    
    var body: some View {
        ZStack{
            Map(coordinateRegion: $manager.region,  //状態変数をバインディング指定
                showsUserLocation: true, // マップ上にユーザーの場所を表示するオプションをBool値で指定
                userTrackingMode: $trackingMode
            )
            .edgesIgnoringSafeArea(.bottom)
            .edgesIgnoringSafeArea(.top)
        }
    }
}

GPSブイ設置

  • 緯度経度取得 LocationManagerクラスに、記録機能追加
    func reloadRegion (bouyNo: Int){
        // オプショナルバインディング
        if let location = manager.location {
            
            let center = CLLocationCoordinate2D(
                latitude: location.coordinate.latitude,
                longitude: location.coordinate.longitude
            )

            if bouyNo == 0 || bouyNo == 1 || bouyNo == 2 {
                //GPSブイ投下を記録
                pointList[bouyNo] = Point(
                    name: "No.\(bouyNo + 1)",
                    latitude: location.coordinate.latitude ,
                    longitude: location.coordinate.longitude
                )
                region = MKCoordinateRegion(
                    center: center,
                    latitudinalMeters: 50.0,
                    longitudinalMeters: 50.0
                )
            } else {
                //ロケーションボタン
                region = MKCoordinateRegion(
                    center: center,
                    latitudinalMeters: 200.0,
                    longitudinalMeters: 200.0
                )
            }
        }
    }
  • View改良し
    • ブイ投下ボタン追加
    • ブイ番号表示
struct Point: Identifiable {
    let id = UUID()         //ユニークID
    let name: String
    let latitude: Double    // 緯度
    let longitude: Double   // 経度
    // 座標
    var coordinate: CLLocationCoordinate2D {
        CLLocationCoordinate2D(latitude: latitude, longitude: longitude)
    }
}

var pointList = [
    Point(name: "1", latitude: 35.709152712026265, longitude: 139.80771829999996),
    Point(name: "2", latitude: 35.711554715026265, longitude: 139.81371829999996),
    Point(name: "3", latitude: 35.712527719026265, longitude: 139.81071829999996)
]

struct ContentView: View {
    @ObservedObject  var manager = LocationManager()
    
    //ユーザートラッキングモードを追従モード変数 .follow ユーザーを追跡  .none ユーザーの追跡を停止
    @State  var trackingMode = MapUserTrackingMode.follow
    
    var body: some View {
        ZStack{
            Map(coordinateRegion: $manager.region,  //状態変数をバインディング指定
                showsUserLocation: true, //ユーザーの場所を表示するオプションをBool値で指定
                userTrackingMode: $trackingMode,
                annotationItems: pointList,
                annotationContent: { (pointList) in
                    MapAnnotation(coordinate: pointList.coordinate) {
                        VStack {
                            Image(systemName: "mappin")
                                .foregroundColor(.orange)
                                .font(.system(size: 20))
                            Text(pointList.name)
                                .foregroundColor(.orange)
                                .font(.system(size: 12))
                        }
                    }
                }
            )
            .edgesIgnoringSafeArea(.all)
            .edgesIgnoringSafeArea(.bottom)
            .edgesIgnoringSafeArea(.top)
            VStack{
                Spacer()
                HStack{
                     Button(action: {
                        manager.reloadRegion(bouyNo: 0)
                    }) {
                        Image(systemName: "mappin.circle.fill")
                            .foregroundColor(.white)
                            .font(.system(size: 12))
                        Text("1")
                            .foregroundColor(.white)
                            .font(.system(size: 12))
                    }
                    .frame(width: 41, height: 25)
                    .cornerRadius(30.0)
                    
                    Button(action: {
                        manager.reloadRegion(bouyNo: 1)
                    }) {
                        Image(systemName: "mappin.circle.fill")
                            .foregroundColor(.white)
                            .font(.system(size: 12))
                        Text("2")
                            .foregroundColor(.white)
                            .font(.system(size: 12))
                    }
                    .frame(width: 41, height: 25)
                    .cornerRadius(30.0)
                    
                    Button(action: {
                        manager.reloadRegion(bouyNo: 2)
                    }) {
                        Image(systemName: "mappin.circle.fill")
                            .foregroundColor(.white)
                            .font(.system(size: 12))
                        Text("3")
                            .foregroundColor(.white)
                            .font(.system(size: 12))
                    }
                    .frame(width: 41, height: 25)
                    .cornerRadius(30.0)
                    
                    
                    Button(action: {
                        manager.reloadRegion(bouyNo: 3)
                    }) {
                        Image(systemName: "location.fill")
                            .foregroundColor(.white)
                            .font(.system(size: 16))
                    }
                    .frame(width: 32, height: 25)
                    .cornerRadius(30.0)
                    
                }
                .background(Color(red: 0.4, green: 0.5, blue: 0.2))   //背景色
                .cornerRadius(30.0)
            }
        }
    }
}
  • 出来たもの
    • ボタン群、左から
      • GPSブイNo.1 投下ボタン
      • GPSブイNo.2 投下ボタン
      • GPSブイNo.3 投下ボタン
      • 現在位置にマップを移動
    • ブイ投下すると、ブイマークとナンバーが表示

      

GPSブイとの距離

  • 距離の計算方法は、Hubenyの公式を採用します
    • 主に日本の計算サイトなどで用いられている公式で,これもざっくり下図を用いて説明すると,まず,2地点A,Bの中点Rにおける回転楕円体の子午線方向と卯酉線方向のそれぞれの曲がり具合を円で近似します.次に2地点A,Bの経度差をΔx,緯度差をΔyとし,回転楕円体の近似円の子午線方向の曲率半径をM,卯酉線方向の曲率半径をNとします.点Aと経度が等しく,点Bと緯度が等しい点Hをつくって直角三角形をつくります.角AOH=Δyと書けるのでAH≒MΔyと近似でき,Rの緯度をμとすると線分BHもBH≒NcosμΔxと近似できます.この線分AHと線分BHを利用して求める距離である線分ABを3平方の定理で導きます
    • 下記C言語プログラムをSwift言語に書き換え、GPSブイNo.1との距離を表示します。単位はメートルとします
func deg2rad(_ deg:CGFloat ) -> CGFloat {
    return CGFloat.pi / 180.0 * deg
}

func cal_distance(x1: Double, y1: Double, x2: Double, y2: Double)->(Double) {
    let dx = x2 - x1
    let dy = y2 - y1
    let mu = (y1 + y2) / 2.0 // μ
    let RX = 6378.137; // 回転楕円体の長半径(赤道半径)[km]
    let RY = 6356.752; // 回転楕円体の短半径(極半径) [km]
    let E = sqrt(1 - pow(RY / RX, 2.0)) // 離心率
    let W = sqrt(1 - pow(E * sin(mu), 2.0))
    let M = RX * (1 - pow(E, 2.0)) / pow(W, 3.0) // 子午線曲率半径
    let N = RX / W // 卯酉線曲率半径
    return sqrt(pow(M * dy, 2.0) + pow(N * dx * cos(mu), 2.0)) // 距離[km]
}

    func locationDistance() -> Int {
        if let location = manager.location {
            let a = deg2rad( pointList[0].latitude )
            let b = deg2rad( pointList[0].longitude )
            let c = deg2rad( location.coordinate.latitude )
            let d = deg2rad( location.coordinate.longitude )
            let e = Int( cal_distance(x1: a, y1: b, x2: c, y2: d) * 1000.0 ) % 10000
            return( e )

        }else{
            return( 0 )
        }
    }
 
  • 表示
    • 4桁のメートルとしています
    • 「Off」にすると、拡大、縮小、移動が自由に出来ます。「On」場合は縮率が600mでGPSで測定した位置が画面中心になります

    • 下ボタン群、左から

      • GPSブイNo.1 投下ボタン
      • GPSブイNo.2 投下ボタン
      • GPSブイNo.3 投下ボタン
      • 現在位置にマップを移動 ー> 拡大鏡に変更

GPSの動きを手動で止める

  • AppleWatchの「設定」>「ブライバシーとセキュリティー」>「位置情報サービス」>「gpsBuoy」>「しない」とする
  • 止まって、地図が表示されなくなる

  • どなたか、プログラムを使った止めかたをご教授して頂けると幸いです

AppleWatch GPSブイで潮流チェック♪ 【開発経過】

課題

  • 海の中で目印となる、GPSブイが欲しい

ニーズ

  • GPSを活用して、位置情報を記録できる機能が欲しい
  • 釣っている最中は釣り具以外何も持ちたくない

背景

釣行計画はスマートフォン

  • 釣りスポットの履歴をGPSで簡単に確認できることで、以前に釣った場所を特定しやすくなる。
  • 釣りスポットの情報を見ながら、新しい釣りスポットを開拓する楽しみが増す。
  • 潮の流れや季節の変化など環境情報をより正確に把握し、釣果向上につなげることができる。

現場まで航行は

GPS釣りスポット記録アプリの利用し目的地に行ける

船にGPS付き魚群探知機があれば便利

実釣

目印としてのGPSブイやマーキング装置を設定し、潮でどれだけ流れたか知りたい

 

ほしい機能

  • GPSブイの投入
    • ブイID、緯度経度記録
    • ○ブイIは3個
    • Xブイは3個
  • GPSブイからの距離計測
    • ○ブイから50m離れたら振動でお知ら
    • Xブイから50m以内に入ったら振動でお知らせ
  • ブイ使用履歴を作成
    • 記録は5個
    •  

最初の一歩 マップ表示  

  • >|Swift|
  • import SwiftUI

    import MapKit

  • struct ContentView: View {

      var body: some View {

         Map()

      }

    }

  • ||<

  


場所指定

  • 緯度経度と表示エリアを設定

>|Swift|

import SwiftUI

import MapKit

struct ContentView: View {

  var body: some View {

    //三重県南伊勢町五ケ所を指定

    @State  var region = MKCoordinateRegion(

      center : CLLocationCoordinate2D (

        latitude: 34.349,  // 緯度

        longitude: 136.697 // 経度

      ),

      latitudinalMeters: 500.0, // 南北の表示エリア(単位:メートル)

      longitudinalMeters: 500.0 // 東西の表示エリア(単位:メートル)

    )

    

    Map(coordinateRegion: $region)

  }

}

||<

 

現在位置表示

  • 緯度経度取得 LocationManagerクラス作成
    • ググって、情報をまとめました。みなさんありがとうございます

>|Swift|

import WatchKit

import MapKit

 

class LocationManager: NSObject, ObservableObject, CLLocationManagerDelegate {

    // CLLocationManagerをインスタンス

    let manager = CLLocationManager()

    

    // 更新のたびに変化するので@Publishedを付与して観測

    @Published  var region =  MKCoordinateRegion()

    

    

    override init() {

        super.init()                                        // スーパクラスイニシャライズ

        manager.delegate = self                             //自身をデリゲートプロパティに

        manager.requestWhenInUseAuthorization()             // 位置情報を利用許可を要求

        manager.desiredAccuracy = kCLLocationAccuracyBest   // 最高精度の位置情報を要求

        manager.distanceFilter = 3.0                        // 更新距離(m)

        manager.startUpdatingLocation()                    //現在位置アップデート生成開始

    }

    

    // 領域の更新をするデリゲートメソッド

    func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {

        

        // 配列の最後に最新のロケーションが格納される

        // map関数を使って全要素にアクセス map{ $0←要素に参照 }

        locations.last.map {

            let center = CLLocationCoordinate2D(

                latitude: $0.coordinate.latitude,

                longitude: $0.coordinate.longitude)

            

            // 地図を表示するための領域を再構築

            region = MKCoordinateRegion(

                center: center,

                latitudinalMeters: 100.0,

                longitudinalMeters: 100.0

            )

        }

    }

}

||<

  • View改良
    • ググって、情報をまとめました。みなさんありがとうございます

>|Swift|

import SwiftUI

import MapKit

 

struct ContentView: View {

    @ObservedObject  var manager = LocationManager()

    

    //ユーザートラッキングモードを追従モード変数 .follow ユーザーを追跡  .none ユーザーの追跡を停止

    @State  var trackingMode = MapUserTrackingMode.follow

    

 

 struct ContentView: View {

    @ObservedObject  var manager = LocationManager()

    

    //ユーザートラッキングモードを追従モード変数 .follow ユーザーを追跡  .none ユーザーの追跡を停止

    @State  var trackingMode = MapUserTrackingMode.follow

    

    var body: some View {

        ZStack{

            Map(coordinateRegion: $manager.region,  //状態変数をバインディング指定

                showsUserLocation: true, // マップ上にユーザーの場所を表示するオプションをBool値で指定

                userTrackingMode: $trackingMode

            )

            .edgesIgnoringSafeArea(.bottom)

            .edgesIgnoringSafeArea(.top)

        }

    }

}

  • ||<

GPSブイ設置

  • 緯度経度取得 LocationManagerクラスに、記録機能追加

>|Swift|

    func reloadRegion (bouyNo: Int){

        // オプショナルバインディング

        if let location = manager.location {

            

            let center = CLLocationCoordinate2D(

                latitude: location.coordinate.latitude,

                longitude: location.coordinate.longitude

            )

 

            if bouyNo == 0 || bouyNo == 1 || bouyNo == 2 {

                //GPSブイ投下を記録

                pointList[bouyNo] = Point(

                    name: "No.\(bouyNo + 1)",

                    latitude: location.coordinate.latitude ,

                    longitude: location.coordinate.longitude

                )

                region = MKCoordinateRegion(

                    center: center,

                    latitudinalMeters: 50.0,

                    longitudinalMeters: 50.0

                )

            } else {

                //ロケーションボタン

                region = MKCoordinateRegion(

                    center: center,

                    latitudinalMeters: 200.0,

                    longitudinalMeters: 200.0

                )

            }

        }

    }

||<

  • View改良し
    • ブイ投下ボタン追加
    • ブイ番号表示

>|Swift|

struct Point: Identifiable {

    let id = UUID()         //ユニークID

    let name: String

    let latitude: Double    // 緯度

    let longitude: Double   // 経度

    // 座標

    var coordinate: CLLocationCoordinate2D {

        CLLocationCoordinate2D(latitude: latitude, longitude: longitude)

    }

}

 

var pointList = [

    Point(name: "1", latitude: 35.709152712026265, longitude: 139.80771829999996),

    Point(name: "2", latitude: 35.711554715026265, longitude: 139.81371829999996),

    Point(name: "3", latitude: 35.712527719026265, longitude: 139.81071829999996)

]

 

struct ContentView: View {

    @ObservedObject  var manager = LocationManager()

    

    //ユーザートラッキングモードを追従モード変数 .follow ユーザーを追跡  .none ユーザーの追跡を停止

    @State  var trackingMode = MapUserTrackingMode.follow

    

    var body: some View {

        ZStack{

            Map(coordinateRegion: $manager.region,  //状態変数をバインディング指定

                showsUserLocation: true, //ユーザーの場所を表示するオプションをBool値で指定

                userTrackingMode: $trackingMode,

                annotationItems: pointList,

                annotationContent: { (pointList) in

                    MapAnnotation(coordinate: pointList.coordinate) {

                        VStack {

                            Image(systemName: "mappin")

                                .foregroundColor(.orange)

                                .font(.system(size: 20))

                            Text(pointList.name)

                                .foregroundColor(.orange)

                                .font(.system(size: 12))

                        }

                    }

                }

            )

            .edgesIgnoringSafeArea(.all)

            .edgesIgnoringSafeArea(.bottom)

            .edgesIgnoringSafeArea(.top)

            VStack{

                Spacer()

                HStack{

                     Button(action: {

                        manager.reloadRegion(bouyNo: 0)

                    }) {

                        Image(systemName: "mappin.circle.fill")

                            .foregroundColor(.white)

                            .font(.system(size: 12))

                        Text("1")

                            .foregroundColor(.white)

                            .font(.system(size: 12))

                    }

                    .frame(width: 41, height: 25)

                    .cornerRadius(30.0)

                    

                    Button(action: {

                        manager.reloadRegion(bouyNo: 1)

                    }) {

                        Image(systemName: "mappin.circle.fill")

                            .foregroundColor(.white)

                            .font(.system(size: 12))

                        Text("2")

                            .foregroundColor(.white)

                            .font(.system(size: 12))

                    }

                    .frame(width: 41, height: 25)

                    .cornerRadius(30.0)

                    

                    Button(action: {

                        manager.reloadRegion(bouyNo: 2)

                    }) {

                        Image(systemName: "mappin.circle.fill")

                            .foregroundColor(.white)

                            .font(.system(size: 12))

                        Text("3")

                            .foregroundColor(.white)

                            .font(.system(size: 12))

                    }

                    .frame(width: 41, height: 25)

                    .cornerRadius(30.0)

                    

                    

                    Button(action: {

                        manager.reloadRegion(bouyNo: 3)

                    }) {

                        Image(systemName: "location.fill")

                            .foregroundColor(.white)

                            .font(.system(size: 16))

                    }

                    .frame(width: 32, height: 25)

                    .cornerRadius(30.0)

                    

                }

                .background(Color(red: 0.4, green: 0.5, blue: 0.2))   //背景色

                .cornerRadius(30.0)

            }

        }

    }

}

||<

  • 出来たもの
    • ボタン群、左から
      • GPSブイNo.1 投下ボタン
      • GPSブイNo.2 投下ボタン
      • GPSブイNo.3 投下ボタン
      • 現在位置にマップを移動
    • ブイ投下すると、ブイマークとナンバーが表示

      

    • 動画は下記を参照

GPSブイとの距離

  • 次回、記載します

 

 

 

 

 

 

AppleWatch 飲み忘れを防止する新しい方法【改良版】

 

 

主旨

  • 飲み忘れを防止する新しい方法であり
  • 一度、作ったAppleWatchを作り直した

 

背景

  • 仕事、家事、家族の世話に追われ日常生活で忙しいため、薬の管理が煩わしい
  • 高齢であるため、テクノロジーの使用には限界があり、複雑なアプリやデジタルツールを使うことに抵抗を感じている
  • 食事のタイミングに合わせて薬を管理することで健康維持に貢献できる。また、外出先でも薬の管理がスムーズに行える方法が必要である

 

法案

  • 薬の飲み忘れを防止する。薬を飲むタイミングを食事に合わせる
  • 食事のタイミングと薬の服用記録を簡単に記録できるツールを提供
  • 日常生活に組み込みやすいデザイン:アプリやツールのデザインをシンプルで使いやすくし、日常生活に取り入れやすくする

 

画面遷移

  1. 起動
    •  

  2.  

    同意
    1. 「設定へ」を押す

    2. 「キャンセル」を押すと起動画面に戻る
    3. 「OK」を押すと次の画面が出る

  3. 設定
    1. 「設定へ」を押す

    2. 服用法に合わせボタンを押し設定
      •  

    3. 「<」戻る
  4.  記録
    1. 「記録へ」を押す
    2. 記録する
  5. 記録リセット
    • 夜中の2時に記録は、自動的にリセットする
      • TimelineViewを設け、1時間ごとに起動するようにして
      • 関数(medicatioRecodeClear)を呼び出し、値をリセットさせる
      • View内で関数を呼ぶとエラーになるので、チョット工夫しました
    •   TimelineView(.periodic(from: .now, by: 3600.0 )) { timeline in

         let calendar = Calendar(identifier: .gregorian)

         let date = Date()

         let hour : Int = Int(calendar.component(.hour, from: date))

         if hour == 2 {

          let hour = medicatioRecodeClear()

         }

        }

       

 

動画で説明youtube.com



 

AppleWatch 釣りで使われる単位・換算【作成開始】


 

釣りで使われる単位の換算表がほしい

  • 情報を集めどのように表示しようかな?
  • 順次、進めていきます



作成

  • 目次

    → 

  • ナイロン、フロロ 表

      

       

    • 使っていません
  • おもり

       

 

  • アイコン作成
    • Affinity Designer 2で作成

   

       

 

ここまで読んでいただき、ありがとうございます

追記

全体を把握するため、流し読みで完読してみました。

知っていることの再確認に役立ちました

 

 

AppleWatch 釣り糸換算表がほしい【妄想】

 

換算表がほしい

  • 情報を集めどのように表示しようかな?
  • 順次、進めていきます


ホーム作成


表を作ってみました

  • ナイロン、フロロ 表

  

  • この後、作っていきます
    • PEライン表
    • 重り表

号とは

釣糸の号の画像

出典:楽天市場

号とは、“釣り糸(ライン)の太さ”の単位。号数が大きくなれば、それだけ太くなり、引張強度や断面積が大きくなるので、大きな魚を狙うことができます。

かつて釣り糸(ライン)の単位には、厘が使われていましたが、東レ社が国産のナイロン製釣糸『銀鱗』を発売する際に、単位を “号” と示しました。

換算の数値の太さは、日本釣用品工業会(JAFTMA)が定めている標準規格を参考

ナイロン・フロロ・エステルの換算表

 

号(ごう) キログラム(kg) ポンド(lb) 太さ(mm)
0.25号 0.454kg 1lb 0.083mm
0.3号  0.544kg  1.2lb 0.090mm
0.4号 0.726kg  1.6lb 0.104mm
0.6号 1.089kg  2.4lb 0.128mm
0.8 1.361kg  3lb 0.148mm
1号  1.814kg 4lb 0.165mm
1.2号 2.177kg  4.8lb 0.185mm
1.5号 2.722kg  6lb 0.205mm
1.75号  3.175kg  7lb 0.220mm
2号  3.629kg  8lb 0.235mm
2.25号  4.082kg 9lb 0.248mm
2.5号 4.536kg  10lb 0.260mm
2.75号 4.990kg  11lb  0.274mm
3号  5.443kg  12lb 0.285mm
3.5号 6.350kg 14lb 0.310mm
4号 7.257kg  16lb 0.330mm
5号 9.072kg 20lb 0.370mm
6号 9.979kg 22lb 0.405mm
7号 11.340kg 25lb 0.435mm
8号 12.701kg 28lb 0.470mm
10号 15.876kg 35lb 0.520mm
12号 18.144kg 40lb 0.570mm
14号 20.412kg 45lb 0.620mm
16号 22.680kg 50lb 0.660mm
18号 24.948kg 55lb 0.700mm
20号 27.216kg 60lb 0.740mm

 

PEラインの換算表

号(ごう) キログラム(kg) ポンド(lb) 太さ(mm) デニール(d)
0.1号 1.814kg 4lb 0.054mm 20d
0.15号 2.043kg 4.5lb 0.066mm 30d
0.2号 2.270kg 5lb 0.076mm 40d
0.3号 2.722kg 6lb 0.094mm 60d
0.4 3.629kg 8lb 0.108mm 80d
0.5号 4.536kg 10lb 0.121mm 100d
0.6号 5.443kg 12lb 0.132mm 120d
0.8号 7.257kg 16lb 0.153mm 160d
1号  9.072kg 20lb 0.171mm 200d
1.2号  10.896kg 24lb 0.191mm 240d
1.5号 13.620kg 30lb 0.209mm 300d
1.7号 15.436kg 34lb 0.219mm 340d
2号 18.160kg 40lb 0.242mm 400d
2.5号 22.700kg 50lb 0.270mm 500d
3号 24.970kg 55lb 0.296mm 600d
4号 27.240kg 60b 0.342mm 800d
5号 36.320kg 80lb 0.382mm 1,000d
6号 40.860kg 90lb 0.418mm 1,200d
8号 45.400kg 100lb 0.483mm 1,600d
10号 59.020kg 130lb 0.540mm 2,000d

カミツブシ(ジンタン)

号数 グラム
8号 0.07
7号 0.09
6号 0.12
5号 0.16
4号 0.20
3号 0.25
2号 0.31
1号 0.40

 

ガン玉

号数 グラム
1/2B 0.27
1B 0.55
2B 0.75
3B 0.95
4B 1.20
5B 1.85
オモリ号数 グラム(g) オンス(oz)
0.1号 0.375g 1/64oz
0.2号 0.75g 1/32oz
0.3号 1.125g  
0.4号 1.5g  
0.5号 1.875g 1/16oz
0.6号 2.25g  
0.7号 2.625g  
0.8号 3g  
0.9号 3.375g  
1号 3.75g 1/8oz
1.5号 5.625g  
2号 7.5g 1/4oz
3号 11.25g 3/8oz
4号 15g 1/2oz
5号 18.75g 5/8oz
6号 22.5g 3/4oz
7号 26.25g 1oz
8号 30g  
9号 33.75g  
10号 37.5g  
11号 41.25g 1-1/2oz
12号 45g  
13号 48.75g  
14号 52.5g  
15号 56.25g 2oz
16号 60g  
17号 63.75g  
18号 67.5g  
19号 71.25g  
20号 75g  
21号 78.75g  
22号 82.5g  
23号 86.25g 3oz
24号 90g  
25号 93.75g  
26号 97.5g  
27号 101.25g  
28号 105g  
29号 108.75g  
30号 112.5g 4oz
35号 131.25g  
40号 150g  
45号 168.75g 6oz
50号 187.5g  
60号 225g 8oz
70号 262.5g  
80号 300g 10oz
90号 337.5g  
100号 375g 12oz

 

 

いつも買っている

 

4/19[金]9:00から4/22[月]まで 「スマイルSALE ゴールデンウィーク」開催!

 

除草

 噴霧器に2.5リットルの水に100ミリリットルの希釈用ランドアップを入れて使います

希釈用

噴霧器

  • 記録
    • 4月6日 散布
    • 4月7日 

     

    • 4月9日

     

    • 4月13日 シダ以外は枯れ始めました

     

    • 4月16日 シダ以外は枯れました。シダはムリかもしれません

    • 4月21日

     





オールインワン

 

アクエリアス

 

バスタブ掃除

 

シリコンオフするときに便利なティッシュ

 

米唐番

 

液体タバコ

 

かみさんから頼まれもの

Esthe Pro Labo エステプロラボ ハーブザイム113 グランプロ <ジンジャー> 500ml プロラボ

価格:6299円
(2024/3/24 11:48時点)
感想(11件)

遠視+1.0を選択し、老眼鏡の代わりに使用。

送料無料★[遠視用] デイリーズアクアコンフォートプラス トーリック 1箱30枚入り 乱視用 1日使い捨て ワンデー デイリーズ アクア toric コンタクトレンズ 日本アルコン

価格:3190円
(2024/3/24 11:51時点)
感想(0件)

 

AppleWatch和時計 マイクロソフトAIに聞いてみた

Edge Copilotに聞いて見たが、回答に不安あり

  • 問い合わせ内容
    • 次の項目から製品企画してください。Applewatchに江戸時刻を表示 暮れ六つ 丑三つ 明け六つ アナログ
  • チャット回答
    • Apple Watchに江戸時刻を表示するアナログスタイルの製品企画

 

  • イメージ作成回答
    •   

 

Copilotさん回答を調べてみる

  • Copilotさんでは「暮れ六つ(夕方):日没から約2時間後」となっています
  • ググって「国立天文台」回答をみてみると
    • 日没から2刻半(36分)となっていますが、緯度により変わるようです
    • 1日 = 100刻。 1刻 = 14.4分  2.5刻 = 36分

   

 

感想

  • AIが出した回答は、よくよく調査してから使う方がいいとおもった

 

プライバシーポリシー |ページトップへ

`