repeat texture

hello, i apply texture to surface :

        cm = CardMaker("plane")
        cm.setFrame(-100., 100., -100., 100.)
        self.plane = self.render.attachNewNode(cm.generate())
        road_tex = self.loader.loadTexture("./textures/road.jpg")

but plane is very big and i want to repeat texture, but with my code my image is enlarged.

I think what you’re looking for is setTexScale. Take a look here: … Transforms

In this case, it would be best to use setUvRange on CardMaker to a number higher than 1, for example, to make the texture repeat 4 times:

cm.setUvRange((0, 0), (4, 4))