geospatial

package module
v0.0.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 6, 2024 License: MIT Imports: 13 Imported by: 0

README

geospatial

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AmbilDataGeojson added in v0.0.2

func AmbilDataGeojson(mongoenv, dbname, collname string, r *http.Request) string

func Box added in v0.0.2

func Box(mconn *mongo.Database, collname string, coordinates Polyline) string

func Center added in v0.0.2

func Center(mconn *mongo.Database, collname string, coordinates Point) string

func CenterSphere added in v0.0.2

func CenterSphere(mconn *mongo.Database, collname string, coordinates Point) string

func Create2dsphere added in v0.0.2

func Create2dsphere(mconn DBInfo) (db *mongo.Database)

func DeleteDoc added in v0.0.2

func DeleteDoc(db *mongo.Database, collection string, filter bson.M) (result *mongo.DeleteResult)

func DeleteGeojson added in v0.0.2

func DeleteGeojson(mconn *mongo.Database, collname string, userdata User) interface{}

func DeleteOneDoc added in v0.0.2

func DeleteOneDoc(db *mongo.Database, collection string, filter bson.M) (result *mongo.DeleteResult)

func DocExists added in v0.0.2

func DocExists[T any](db *mongo.Database, collname string, filter bson.M, doc T) (result bool)

func GeoWithin added in v0.0.2

func GeoWithin(mconn *mongo.Database, collname string, coordinates Polygon) string

func GetAllDistinctDoc added in v0.0.2

func GetAllDistinctDoc(db *mongo.Database, filter bson.M, fieldname, collection string) (doc []any)

func GetAllDoc added in v0.0.2

func GetAllDoc[T any](db *mongo.Database, collection string) (doc T)

func GetAllDocByFilter added in v0.0.2

func GetAllDocByFilter[T any](db *mongo.Database, collection string, filter bson.M) (doc T)

func GetBoxDoc added in v0.0.2

func GetBoxDoc(db *mongo.Database, collname string, coordinates Polyline) (result string)

func GetCenterDoc added in v0.0.2

func GetCenterDoc(db *mongo.Database, collname string, coordinates Point) (result string)

func GetCenterSphereDoc added in v0.0.2

func GetCenterSphereDoc(db *mongo.Database, collname string, coordinates Point) (result string)

func GetGeoIntersectsDoc added in v0.0.2

func GetGeoIntersectsDoc(db *mongo.Database, collname string, coordinates Polygon) (result string)

func GetGeoWithinDoc added in v0.0.2

func GetGeoWithinDoc(db *mongo.Database, collname string, coordinates Polygon) (result string)

func GetNearDoc added in v0.0.2

func GetNearDoc(db *mongo.Database, collname string, coordinates Point) (result string)

func GetNearSphereDoc added in v0.0.2

func GetNearSphereDoc(db *mongo.Database, collname string, coordinates Point) (result string)

func GetOneDoc added in v0.0.2

func GetOneDoc[T any](db *mongo.Database, collection string, filter bson.M) (doc T)

func GetOneLatestDoc added in v0.0.2

func GetOneLatestDoc[T any](db *mongo.Database, collection string, filter bson.M) (doc T, err error)

func GetRandomDoc added in v0.0.2

func GetRandomDoc[T any](db *mongo.Database, collection string, size uint) (result []T, err error)

func InsertOneDoc added in v0.0.2

func InsertOneDoc(db *mongo.Database, collection string, doc interface{}) (insertedID interface{})

func MembuatGeojsonPoint added in v0.0.2

func MembuatGeojsonPoint(mongoenv, dbname, collname string, r *http.Request) string

func MembuatGeojsonPolygon added in v0.0.2

func MembuatGeojsonPolygon(mongoenv, dbname, collname string, r *http.Request) string

func MembuatGeojsonPolyline added in v0.0.2

func MembuatGeojsonPolyline(mongoenv, dbname, collname string, r *http.Request) string

func MongoConnect added in v0.0.2

func MongoConnect(mconn DBInfo) (db *mongo.Database)

func Near added in v0.0.2

func Near(mconn *mongo.Database, collname string, coordinates Point) string

func NearSphere added in v0.0.2

func NearSphere(mconn *mongo.Database, collname string, coordinates Point) string

func PostBox added in v0.0.2

func PostBox(mongoenv, dbname, collname string, r *http.Request) string

func PostCenter added in v0.0.2

func PostCenter(mongoenv, dbname, collname string, r *http.Request) string

func PostGeoIntersects added in v0.0.2

func PostGeoIntersects(mongoenv, dbname, collname string, r *http.Request) string

func PostGeoWithin added in v0.0.2

func PostGeoWithin(mongoenv, dbname, collname string, r *http.Request) string

func PostLinestring added in v0.0.2

func PostLinestring(mconn *mongo.Database, collection string, linestringdata GeoJsonLineString) interface{}

func PostNear added in v0.0.2

func PostNear(mongoenv, dbname, collname string, r *http.Request) string

func PostNearSphere added in v0.0.2

func PostNearSphere(mongoenv, dbname, collname string, r *http.Request) string

func PostPoint added in v0.0.2

func PostPoint(mconn *mongo.Database, collection string, pointdata GeoJsonPoint) interface{}

func PostPolygon added in v0.0.2

func PostPolygon(mconn *mongo.Database, collection string, polygondata GeoJsonPolygon) interface{}

func ReplaceOneDoc added in v0.0.2

func ReplaceOneDoc(db *mongo.Database, collection string, filter bson.M, doc interface{}) (updatereseult *mongo.UpdateResult)

func ReturnString added in v0.0.7

func ReturnString(geojson []FullGeoJson) string

func ReturnStruct added in v0.0.2

func ReturnStruct(DataStuct any) string

func SetConnection added in v0.0.2

func SetConnection(mongoenv, dbname string) *mongo.Database

func SetConnection2dsphere added in v0.0.2

func SetConnection2dsphere(mongoenv, dbname, collname string) *mongo.Database

Types

type CredentialUser added in v0.0.2

type CredentialUser struct {
	Status bool `json:"status" bson:"status"`
	Data   struct {
		Name     string `json:"name" bson:"name"`
		Username string `json:"username" bson:"username"`
		Role     string `json:"role" bson:"role"`
	} `json:"data" bson:"data"`
	Message string `json:"message,omitempty" bson:"message,omitempty"`
}

type DBInfo added in v0.0.2

type DBInfo struct {
	DBString       string
	DBName         string
	CollectionName string
}

type FullGeoJson added in v0.0.2

type FullGeoJson struct {
	ID         primitive.ObjectID `json:"_id,omitempty" bson:"_id,omitempty"`
	Type       string             `json:"type" bson:"type"`
	Properties Properties         `json:"properties" bson:"properties"`
	Geometry   Geometry           `json:"geometry" bson:"geometry"`
}

func GeoIntersects added in v0.0.2

func GeoIntersects(mconn *mongo.Database, collname string, geospatial models.Geospatial) ([]FullGeoJson, error)

type GeoJson added in v0.0.2

type GeoJson struct {
	Type       string     `json:"type" bson:"type"`
	Properties Properties `json:"properties" bson:"properties"`
	Geometry   Geometry   `json:"geometry" bson:"geometry"`
}

func GetAllBangunan added in v0.0.2

func GetAllBangunan(mconn *mongo.Database, collname string) []GeoJson

type GeoJsonLineString added in v0.0.2

type GeoJsonLineString struct {
	Type       string     `json:"type" bson:"type"`
	Properties Properties `json:"properties" bson:"properties"`
	Geometry   struct {
		Coordinates [][]float64 `json:"coordinates" bson:"coordinates"`
		Type        string      `json:"type" bson:"type"`
	} `json:"geometry" bson:"geometry"`
}

type GeoJsonPoint added in v0.0.2

type GeoJsonPoint struct {
	Type       string     `json:"type" bson:"type"`
	Properties Properties `json:"properties" bson:"properties"`
	Geometry   struct {
		Coordinates []float64 `json:"coordinates" bson:"coordinates"`
		Type        string    `json:"type" bson:"type"`
	} `json:"geometry" bson:"geometry"`
}

type GeoJsonPolygon added in v0.0.2

type GeoJsonPolygon struct {
	Type       string     `json:"type" bson:"type"`
	Properties Properties `json:"properties" bson:"properties"`
	Geometry   struct {
		Coordinates [][][]float64 `json:"coordinates" bson:"coordinates"`
		Type        string        `json:"type,omitempty" bson:"type,omitempty"`
	} `json:"geometry" bson:"geometry"`
}

type Geometry added in v0.0.2

type Geometry struct {
	Coordinates interface{} `json:"coordinates" bson:"coordinates"`
	Type        string      `json:"type" bson:"type"`
}

type LongLat added in v0.0.2

type LongLat struct {
	Latitude  float64 `json:"latitude"`
	Longitude float64 `json:"longitude"`
}

type Payload added in v0.0.2

type Payload struct {
	Name     string    `json:"name"`
	Username string    `json:"username"`
	Role     string    `json:"role"`
	Exp      time.Time `json:"exp"`
	Iat      time.Time `json:"iat"`
	Nbf      time.Time `json:"nbf"`
}

type Pesan added in v0.0.2

type Pesan struct {
	Status  bool        `json:"status" bson:"status"`
	Message string      `json:"message" bson:"message"`
	Data    interface{} `json:"data,omitempty" bson:"data,omitempty"`
	Token   string      `json:"token,omitempty" bson:"token,omitempty"`
}

type Point added in v0.0.2

type Point struct {
	Coordinates []float64 `json:"coordinates" bson:"coordinates"`
	Max         int64     `json:"max,omitempty" bson:"max,omitempty"`
	Min         int64     `json:"min,omitempty" bson:"min,omitempty"`
	Radius      float64   `json:"radius,omitempty" bson:"radius,omitempty"`
}

type Polygon added in v0.0.2

type Polygon struct {
	Coordinates [][][]float64 `json:"coordinates" bson:"coordinates"`
}

type Polyline added in v0.0.2

type Polyline struct {
	Coordinates [][]float64 `json:"coordinates" bson:"coordinates"`
}

type Properties added in v0.0.2

type Properties struct {
	Name string `json:"name" bson:"name"`
}

type User added in v0.0.2

type User struct {
	Name     string `json:"name" bson:"name"`
	Username string `json:"username" bson:"username"`
	Password string `json:"password" bson:"password"`
	Role     string `json:"role" bson:"role"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL