Apprendre
Télécharger
Communauté
Développement
Accueil
»
Apprendre
»
Documentation 2.4.1
»
Texture.hpp Source File
English
Faire un don
Documentation de SFML 2.4.1
Attention:
cette page se réfère à une ancienne version de SFML. Cliquez ici pour passer à la dernière version.
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
SFML
include
SFML
Graphics
Texture.hpp
1
//
3
// SFML - Simple and Fast Multimedia Library
4
// Copyright (C) 2007-2016 Laurent Gomila (laurent@sfml-dev.org)
5
//
6
// This software is provided 'as-is', without any express or implied warranty.
7
// In no event will the authors be held liable for any damages arising from the use of this software.
8
//
9
// Permission is granted to anyone to use this software for any purpose,
10
// including commercial applications, and to alter it and redistribute it freely,
11
// subject to the following restrictions:
12
//
13
// 1. The origin of this software must not be misrepresented;
14
// you must not claim that you wrote the original software.
15
// If you use this software in a product, an acknowledgment
16
// in the product documentation would be appreciated but is not required.
17
//
18
// 2. Altered source versions must be plainly marked as such,
19
// and must not be misrepresented as being the original software.
20
//
21
// 3. This notice may not be removed or altered from any source distribution.
22
//
24
25
#ifndef SFML_TEXTURE_HPP
26
#define SFML_TEXTURE_HPP
27
29
// Headers
31
#include <SFML/Graphics/Export.hpp>
32
#include <SFML/Graphics/Image.hpp>
33
#include <SFML/Window/GlResource.hpp>
34
35
36
namespace
sf
37
{
38
class
Window;
39
class
RenderTarget;
40
class
RenderTexture;
41
class
InputStream;
42
47
class
SFML_GRAPHICS_API
Texture
:
GlResource
48
{
49
public
:
50
55
enum
CoordinateType
56
{
57
Normalized
,
58
Pixels
59
};
60
61
public
:
62
69
Texture
();
70
77
Texture
(
const
Texture
& copy);
78
83
~
Texture
();
84
96
bool
create(
unsigned
int
width,
unsigned
int
height);
97
127
bool
loadFromFile(
const
std::string& filename,
const
IntRect
& area =
IntRect
());
128
159
bool
loadFromMemory(
const
void
* data, std::size_t size,
const
IntRect
& area =
IntRect
());
160
190
bool
loadFromStream(
InputStream
& stream,
const
IntRect
& area =
IntRect
());
191
214
bool
loadFromImage(
const
Image
& image,
const
IntRect
& area =
IntRect
());
215
222
Vector2u
getSize()
const
;
223
237
Image
copyToImage()
const
;
238
255
void
update(
const
Uint8* pixels);
256
277
void
update(
const
Uint8* pixels,
unsigned
int
width,
unsigned
int
height,
unsigned
int
x,
unsigned
int
y);
278
297
void
update(
const
Image
& image);
298
314
void
update(
const
Image
& image,
unsigned
int
x,
unsigned
int
y);
315
334
void
update(
const
Window
& window);
335
351
void
update(
const
Window
& window,
unsigned
int
x,
unsigned
int
y);
352
367
void
setSmooth(
bool
smooth);
368
377
bool
isSmooth()
const
;
378
402
void
setSrgb(
bool
sRgb);
403
412
bool
isSrgb()
const
;
413
436
void
setRepeated(
bool
repeated);
437
446
bool
isRepeated()
const
;
447
471
bool
generateMipmap();
472
481
Texture
& operator =(
const
Texture
& right);
482
493
unsigned
int
getNativeHandle()
const
;
494
526
static
void
bind(
const
Texture
* texture, CoordinateType coordinateType = Normalized);
527
538
static
unsigned
int
getMaximumSize();
539
540
private
:
541
542
friend
class
RenderTexture
;
543
friend
class
RenderTarget
;
544
558
static
unsigned
int
getValidSize(
unsigned
int
size);
559
567
void
invalidateMipmap();
568
570
// Member data
572
Vector2u
m_size;
573
Vector2u
m_actualSize;
574
unsigned
int
m_texture;
575
bool
m_isSmooth;
576
bool
m_sRgb;
577
bool
m_isRepeated;
578
mutable
bool
m_pixelsFlipped;
579
bool
m_fboAttachment;
580
bool
m_hasMipmap;
581
Uint64 m_cacheId;
582
};
583
584
}
// namespace sf
585
586
587
#endif // SFML_TEXTURE_HPP
588
sf::InputStream
Abstract class for custom file input streams.
Definition:
InputStream.hpp:41
sf
Definition:
AlResource.hpp:34
sf::GlResource
Base class for classes that require an OpenGL context.
Definition:
GlResource.hpp:44
sf::RenderTexture
Target for off-screen 2D rendering into a texture.
Definition:
RenderTexture.hpp:47
sf::Rect< int >
sf::Texture
Image living on the graphics card that can be used for drawing.
Definition:
Texture.hpp:47
sf::Window
Window that serves as a target for OpenGL rendering.
Definition:
Window/Window.hpp:57
sf::Texture::CoordinateType
CoordinateType
Types of texture coordinates that can be used for rendering.
Definition:
Texture.hpp:55
sf::RenderTarget
Base class for all render targets (window, texture, ...)
Definition:
RenderTarget.hpp:51
sf::Vector2< unsigned int >
sf::Image
Class for loading, manipulating and saving images.
Definition:
Image.hpp:46
sf::Texture::Normalized
Texture coordinates in range [0 .. 1].
Definition:
Texture.hpp:57