Skip to content

Instantly share code, notes, and snippets.

View Koshimizu-Takehito's full-sized avatar
🏝️

takehito Koshimizu-Takehito

🏝️
View GitHub Profile
@yosshi4486
yosshi4486 / Polygon.swift
Created February 17, 2024 08:45
Polygon shape considered a corner radius.
/// 多角形のシェープ.
struct Polygon : Shape {
/// 多角形の頂点の数. デフォルト値は`3`
var numberOfVertex: Int
/// 角の半径. デフォルト値は`3`.
var cornerRadius: CGFloat
/// 直線をトップに配置するかどうかのBool値. デフォルト値は`false`.
@realvjy
realvjy / ChoasLinesShader.metal
Last active June 13, 2024 19:54
Choas Lines - Metal Shader
// Lines
float hash( float n ) {
return fract(sin(n)*753.5453123);
}
// Slight modification of iq's noise function.
float noise(vector_float2 x )
{
vector_float2 p = floor(x);
vector_float2 f = fract(x);
@renyello
renyello / HuggingFaceProgressCircle.swift
Last active July 19, 2023 13:37
HuggingFaceのLoading画面に表示されるアニメーションを再現しました。カラーは青:#3498DB 黄色:#F1C40F 赤:#E74C3C を使用してます。
import SwiftUI
struct HugginFaceProgressCircle: View {
@State private var rotationDegrees: [Double] = [0, 0, 0]
@State private var startTrim: [CGFloat] = [0, 0, 0]
@State private var trimTo: CGFloat = 120.0 / 360.0
@State private var shouldRotate = true
@State private var opacity = 1.0
let timer = Timer.publish(every: 0.1, on: .main, in: .common).autoconnect()
@YusukeHosonuma
YusukeHosonuma / ContentView.swift
Created May 29, 2022 05:34
Canvas で Apple ロゴっぽいレインボーなレンダリングをするやつ + TimelineView でアニメーション
import SwiftUI
struct ContentView: View {
@State private var tick: Int = 0
@State private var opacity: Double = 0
@State private var inverse = true
var body: some View {
TimelineView(.animation) { timeline in
content(timeline.date)
@YusukeHosonuma
YusukeHosonuma / ContentView.swift
Created May 28, 2022 15:48
Canvas で Apple ロゴっぽいレインボーなレンダリングをするやつ。
// 🌱 Inspired by and special thanks!
// https://gist.github.com/Koshimizu-Takehito/737381f5e55678e691205fe11fe16e93
import SwiftUI
struct ContentView: View {
var body: some View {
HStack(spacing: 12) {
ForEach(["applelogo", "swift"], id: \.self) { name in
VStack(spacing: 12) {
@YusukeHosonuma
YusukeHosonuma / The introduction to SwiftUI.md
Last active April 21, 2024 12:11
あなたが求めていた SwiftUI 入門(未完結)

昔に書いていた未完結の記事ですが、それでも宜しければどうぞです🙏

あなたが求めていた SwiftUI 入門(未完結)

あなたは今年こそ SwiftUI を学ぶ必要があると感じている。

それは今年の WWDC20 で発表された Widget と呼ばれる機能が SwiftUI でしか作成できないことを聞いたからかもしれないし、SwiftUI 100% でマルチプラットフォームのアプリを作成できるようになったからかもしれないし、あるいはいつまでも UIKit に依存しているのはリスクだと感じ取ったのかもしれない。

学習の上で一番難しい部分は、SwiftUI で考えるということだ。従来の命令的でステートフルなプログラミングから離れて、宣言的でステートレスに考えるように脳を強制しなくてはならない。すでに日本でも SwiftUI の書籍はいくつか発売されているが、その多くは使い方に関することが中心で、SwiftUI が**どのように動くのか(How it works)**についての解説は不足しているものが多いように感じる。